如果点击的链接将target =“_ blank”设置为属性,我想调用window.open,否则我设置iframe来加载页面。
如何检查attr并确保在值为null等时不会崩溃。
到目前为止,我有这个:
if ($(that).attr("target") == "_blank") {
window.open(linkHref, "_blank");
}
else {
document.getElementById(someFrame).src = linkHref;
}
我很害怕如果$(that).attr("target")
未设置,或者为空,则会崩溃。
答案 0 :(得分:5)
来自JQuery文档:
访问第一个匹配元素的属性。这个方法成功了 很容易从第一个匹配的元素中检索属性值。如果 该元素没有具有这样名称的属性,undefined是 回。属性包括title,alt,src,href,width,style等。
它不会爆炸,但如果属性丢失则返回undefined。因此,期望返回未定义的潜力,并相应地进行调整。
更糟糕的是,你总是可以在try / catch中包含易失性代码来规避错误。