Javascript 无限循环js更改标题
如何在无限循环中更改我的站点标题?当消息传来时,函数Javascript 无限循环js更改标题,javascript,jquery,Javascript,Jquery,如何在无限循环中更改我的站点标题?当消息传来时,函数changetTitle()执行一段时间以单击用户按钮,但当无限循环运行时,我什么也做不了 功能点击按钮 功能更改标题和睡眠 函数睡眠(毫秒){ var start=new Date().getTime(); 对于(变量i=0;i毫秒){ 打破 } } } 函数changetTitle(){ 做{ document.title=“新邮件…”; 睡眠(1000); var text=“From”+$(“#hNot”).val()+”; docum
changetTitle()
执行一段时间以单击用户按钮,但当无限循环运行时,我什么也做不了
功能点击按钮
功能更改标题和睡眠
函数睡眠(毫秒){
var start=new Date().getTime();
对于(变量i=0;i<1e7;i++){
如果((新日期().getTime()-start)>毫秒){
打破
}
}
}
函数changetTitle(){
做{
document.title=“新邮件…”;
睡眠(1000);
var text=“From”+$(“#hNot”).val()+”;
document.title=文本;
睡眠(1000);
}而($(“#hNot”).val()!=”){
document.title=“title default”;
}
};
使用带有设置超时的函数,而不是任何循环(循环将在执行期间阻塞整个UI,因此在您的情况下永远如此):
使用带有setTimeout
的函数,而不是任何循环(循环将在执行期间阻塞整个UI,因此在您的情况下永远如此):
这就是你正在做的可怕的事情。您不应该像这样用无休止的循环阻塞整个UI线程。使用事件。您的睡眠
不应该有循环
。您可以/应该使用超时时间
。您可以在输入的按键/模糊事件和/或单击按钮中更改标题。这样可以避免循环或超时?哦,天啊。。。在Javascript中睡眠。您应该使用setTimeout或setInterval。这是您正在做的最糟糕的事情。您不应该像这样用无休止的循环阻塞整个UI线程。使用事件。您的睡眠
不应该有循环
。您可以/应该使用超时时间
。您可以在输入的按键/模糊事件和/或单击按钮中更改标题。这样可以避免循环或超时?哦,天啊。。。在Javascript中睡眠。您应该使用setTimeout或setInterval。
$("#userButton").click(function(){
$("#hNot").val("");
});
function sleep(milliseconds) {
var start = new Date().getTime();
for (var i = 0; i < 1e7; i++) {
if ((new Date().getTime() - start) > milliseconds) {
break;
}
}
}
function changeTitle() {
do {
document.title = "New message...";
sleep(1000);
var text = "From " + $("#hNot").val() + "...";
document.title = text;
sleep(1000);
} while ($("#hNot").val() != "") {
document.title = "title default";
}
};
function changeTitle(type) {
if ($("#hNot").val() != "") {
if (type === 1) {
document.title = "New message...";
type = 0;
} else {
document.title = "From " + $("#hNot").val() + "...";
type = 1;
}
setTimeout(function(){ changeTitle(type) }, 1000);
} else {
document.title = "tittle default";
}
}
changeTitle(1); //launch title change