Risposte:
No. Ma dovresti davvero usare console.log()
invece che alert()
per il debug.
In Chrome ha anche il vantaggio di poter stampare interi oggetti (non solo toString()
).
debugger
o un punto di interruzione.
console.log
, debugger
o punti di rottura per il debug. Ma la risposta è sbagliata alla domanda. Ci sono alcuni casi in cui si desidera effettivamente utilizzare qualcosa come Javascript confirm();
e quando si preme la casella di controllo, verrà impedita la visualizzazione della finestra di dialogo. Quindi la domanda è: puoi ancora annullarlo o persino impedirlo, perché VUOI questa finestra di dialogo per la tua pagina (non per annunci pubblicitari di annony)
Quindi la risposta corretta è: SI, c'è un modo migliore.
Fare clic con il tasto destro sulla scheda e selezionare "Duplica", quindi chiudere la scheda originale se lo si desidera.
L'avviso viene riattivato nel duplicato.
La scheda duplicata sembra ricreare lo stato di esecuzione della scheda originale in modo che tu possa semplicemente continuare da dove eri.
Altre 2 soluzioni con cui ho avuto fortuna quando né la chiusura della scheda + la riapertura della pagina in un'altra scheda né la chiusura di tutte le schede in Chrome (e il browser), quindi il riavvio non ha funzionato:
1) L'ho riparato sulla mia macchina chiudendo la scheda, chiudendo forzatamente Chrome e riavviando il browser senza ripristinare le schede (Nota: su un computer con CentOS Linux).
2) Il mio capo (anche su CentOS) ha avuto lo stesso problema (gli avvisi sono una parte importante del processo di debug Javascript della mia azienda per numerosi motivi, ad esempio legacy), ma il mio primo metodo non ha funzionato per lui. Tuttavia, sono riuscito a risolverlo per lui con il seguente processo:
a) Crea un file di testo vuoto chiamato FixChrome.sh e incolla il seguente script bash:
#! /bin/bash
cd ~/.config/google-chrome/Default //adjust for your Chrome install location
rm Preferences
rm 'Current Session'
rm 'Current Tabs'
rm 'Last Session'
rm 'Last Tabs'
b) chiudi Chrome, quindi apri Terminale ed esegui lo script (bash FixChrome.sh).
Ha funzionato per lui. Lo svantaggio è che perdi tutte le schede della sessione corrente e precedente, ma ne vale la pena se questo è importante per te.
apri una nuova finestra o scheda con lo stesso link .. l'opzione PREVENT dura solo per sessione ..
Of course I can close the tab and reload it but Is there a better way?
Se si desidera che la finestra di dialogo venga riattivata per la pagina impostata come finestra di dialogo di prevenzione da mostrare.
Chrome: seleziona le impostazioni, si aprirà una pagina Google per Chrome con tutte le tue impostazioni per Chrome.
In fondo, vai alle impostazioni avanzate e in fondo alle impostazioni avanzate puoi fare clic su Resset Browser Settings ... questo farà apparire la finestra di dialogo come dovrebbe.
La disattivazione dell'accelerazione hardware sembra essere l'impostazione che influenza i popup e le finestre di dialogo.
Chrome nascondeva continuamente le finestre di dialogo quando dovevo rispondere Sì o No alle cose, anche quando dovevo rinominare le cartelle nel mio pannello dei segnalibri. Dopo settimane passate a farlo. Ho disabilitato tutti gli helper di Chrome in Impostazioni, anche in Windows 10 ho disattivato Scatta finestra. Ha fatto qualcosa per rimettere i popup e le finestre di dialogo nel Viewport.
Quando si verifica questo bug, sono stato in grado di chiudere una scheda premendo prima Invio prima di fare clic sul pulsante X di chiusura della scheda. Il browser aveva una casella di avviso, nascosta che necessitava di una risposta da parte dell'utente.
Disattivare e riattivare l'accelerazione hardware, interrompere il processo di Chrome e disattivare tutti gli altri helper e viceversa ha risolto il problema per me ... Deve essere in Chrome stesso perché sono appena entrato in una finestra di Chrome sul Mac e ora lo ha fermato il problema, senza alcun intervento. Immagino che sfogliando le impostazioni di Chrome on / off / on abbia causato il riposizionamento delle finestre di dialogo. Non riesco a convincere il browser a ripetere l'errore ora ...