我正在开发一个新的应用程序,其中不同的页面具有不同的DOM元素,如Map page
具有一些特定于地图的元素,而Message page
具有特定于消息的信息。为了减少请求的数量,我将所有脚本组合到一个文件并放入页脚。
但问题是,当我在Map Page
时,为Message page
上仅存在的缺失元素获取错误,我相信我错过了一些非常简单但我无法理解的内容
答案 0 :(得分:0)
如果您不希望脚本停止,可以使用try和catch。
即
try{
var test = document.getElementById("someelementthatdontexsist");
alert(test.innerHTML);
}
catch(err){};
击> <击> 撞击>
因此,Esko建议你需要使用&#34;如果&#34;检查你是否在正确的页面上运行适当的代码。
样品:
var PageName = document.getElementsByTagName('body');
document.getElementById("check_button").addEventListener('click', function () {
if (PageName[0].getAttribute('id') == "map_page") {
//do map_page things
document.getElementById("page_name").innerText = PageName[0].getAttribute('id');
}
if (PageName[0].getAttribute('id') == "message_page") {
//do message_page things
document.getElementById("page_name").innerText = PageName[0].getAttribute('id');
}
});
&#13;
<body id="map_page">
<button id="check_button">Check page</button>
<span id="page_name">test
</span>
</body>
&#13;