使用javascript设置html页面的标题
页面的标题由外部javascript设置。我找不到做这件事的确切函数。因此,我编写了一个函数并将其放入html文件中。但它仍然显示了上一个javascript函数的标题使用javascript设置html页面的标题,javascript,html,css,web,frontend,Javascript,Html,Css,Web,Frontend,页面的标题由外部javascript设置。我找不到做这件事的确切函数。因此,我编写了一个函数并将其放入html文件中。但它仍然显示了上一个javascript函数的标题 <script type="text/javascript"> $(document).ready(function() { document.title = 'Pry'; }); </script> $(文档).ready(函数(){ document.title='Pry'; });
<script type="text/javascript">
$(document).ready(function() {
document.title = 'Pry';
});
</script>
$(文档).ready(函数(){
document.title='Pry';
});
您也可以尝试定期更改标题。因为你不知道脚本什么时候会改变标题
setInterval(function() {
document.title = 'Pry';
}, 1000);
如果脚本更改了一次标题,也可以在标题更改后停止此计时器
var title = 'Pry';
var count = 0;
var timer = setInterval(function() {
if (document.title !== title)
count += 1;
document.title = title;
// count will be incremented twice
// once when this function runs for first time
// when title is actually changed
if (count >= 2)
clearInterval(timer);
}, 1000);
您最好编辑实际更改标题的脚本,而不是编写另一个例程来更改标题。您也可以尝试定期更改标题。因为你不知道脚本什么时候会改变标题
setInterval(function() {
document.title = 'Pry';
}, 1000);
如果脚本更改了一次标题,也可以在标题更改后停止此计时器
var title = 'Pry';
var count = 0;
var timer = setInterval(function() {
if (document.title !== title)
count += 1;
document.title = title;
// count will be incremented twice
// once when this function runs for first time
// when title is actually changed
if (count >= 2)
clearInterval(timer);
}, 1000);
最好是编辑实际更改标题的脚本,而不是编写另一个例程来更改标题。如果可能的话,您最好在用例中倾听更改
setInterval(function() {
document.title = 'Pry';
}, 1000);
$(document).ready(function () {
$("title", "head").change(function () {
console.log("Title has changed");
changeTitle();
});
//Trigger Change
function changeTitle() {
$("title", "head").text("New Title");
}
$("title","head").text("test Title").trigger('change'); // triggered elsewhere
});
如果可能的话,您最好倾听用例中的变化
$(document).ready(function () {
$("title", "head").change(function () {
console.log("Title has changed");
changeTitle();
});
//Trigger Change
function changeTitle() {
$("title", "head").text("New Title");
}
$("title","head").text("test Title").trigger('change'); // triggered elsewhere
});
Object.defineProperty(document,'title',{set:function(){throw new Error();}}})
应该在其他代码试图设置时抛出一个错误来告诉您它被设置在哪里。您也可以尝试一个MutationObserverObject.defineProperty(document,'title',{set:function(){throw new Error();})
应该在其他代码尝试设置时抛出一个错误,告诉您它在哪里被其他代码设置。您也可以尝试一个MutationObserver,但您认为它不起作用。您将标题设置为“Pry”,然后检查document.title===title
是否已更改?它一点也没有改变,过去是,现在仍然是“窥探”。我找不到改变它的脚本。javascript太长了。@skobaljic我已经修改过了。希望这样能更好地检测出标题是否真的被更改了。不要认为它会起作用。您将标题设置为“Pry”,然后检查document.title===title
是否已更改?它一点也没有改变,过去是,现在仍然是“窥探”。我找不到改变它的脚本。javascript太长了。@skobaljic我已经修改过了。希望这样可以更好地检测标题是否已更改。外部脚本不会触发更改
。噢,crud。没想过这个你知道的。。。离开这里对任何有类似经历的人都很有用。外部脚本不会触发change
。噢,crud。没想过这个你知道的。。。我想,离开这里对任何有类似经历的人都很有用。