Lasciami spiegare: quando si chiama un avviso() in JS, tutto il codice che si trova in basso dell'avviso si interromperà e quando si fa clic su OK , il codice restituisce lavoro.Arresta tutto il codice e continua in seguito, come un avviso() in JS
io fare il mio avviso personalizzato con questo codice:
function cAlert()
{
var bOn;
this.show = function (content)
{
bOn = true;
document.write('<div id="turnOffLight"></div><div id="cAlertBox"><div id="cAlertImageBox"><img style="position: absolute; top: 54%; left: 50%; margin-top: -32px; margin-left: -32px;" src="Images/Vectors/1429744831_678136-shield-warning-64.png" alt=""/> </div><div id="cAlertContentBox"> </div><div id="cAlertButtonBox"><input id="cAlertButtonStyle" type="button" value="OK" onclick="cAlert.ok()" /></div></div>');
$("#cAlertContentBox").html(content);
$("#cAlertBox").show();
$("#turnOffLight").fadeIn("fast");
var div = document.getElementById('cAlertBox').offsetWidth;
var res = -Math.abs(div/2);
document.getElementById('cAlertBox').style.marginTop = res + "px";
};
this.ok = function()
{
$("#cAlertBox").hide();
$("#turnOffLight").fadeOut("medium");
bOn = false;
};
}
e nelle altre pagine:
<head>
<script src="Scripts/jQuery_1.11.2.js" type="text/javascript"></script>
<script src="Scripts/cAlertScript.js" type="text/javascript"></script>
<script type="text/javascript">var cAlert = new cAlert();</script>
</head>
ma ho un problema, in pagina di login, dopo la chiamata il cAlert(), lo chiamo:
echo "<script>javascript:history.go(-1)</script>";
per tornare all'ultima pagina, quando usavo l'avviso(), solo dopo che l'utente ha fatto clic su OK, il browser torna all'ultima pagina, ma utilizzando il cAlert, il browser ritorna già all'ultima pagina.
Quello che voglio è che l'utente deve fare clic sul pulsante OK per continuare il codice come avviso().
Questo è solo impossibile in JS oltre che per le funzioni native 'alert()', 'conferma() ', e' prompt() '. Solo quelli hanno la capacità di interrompere il thread di esecuzione. A meno che non si abbia voglia di scrivere il proprio motore JavaScript che fermerebbe l'esecuzione anche su qualche altra funzione ...: P +1 per domande ben scritte comunque. – Scimonster