我有这个
authnav='<li class="last"><a href="auth/login">login</a></li>'+
'<li><a href="auth/create_account">create account</a></li>';
它在Firefox中工作正常,但Internet Explorer给我一个“错误:对象不支持这个属性或方法”我很神秘 - 这里可能会发生什么?
在违规行上方有一条评论线,这可能会有所作为吗?
//authnav='<li class="last"><a href="auth/login">login</a></li>';
在http://www.imagineelection.com处自行查看该页面。我想要两个小链接“登录”和“创建帐户”,显示在页面的右上角。
谢谢!
答案 0 :(得分:4)
此函数出现问题,因为IE允许您将document.getElementById("authnav")
引用为authnav,然后在为其分配字符串时会感到不安。也许明确地用var authnav
声明一个局部变量会起作用还是打算成为一个全局变量?
function add_auth_nav() {
name = get_cookie("name");
candidate = get_cookie("candidate");
if (name) {
authnav = '<li class="last"><a href="auth/logout">logout</a></li>';
if (candidate) {
authnav = authnav + '<li><a href="edit/candidate/' + candidate + '">edit profile</a></li><li><a href="profile/' + candidate + '">view profile</a></li>'
}
authnav = authnav + "<li>" + name.replace(/\+/g, " ") + "</li>"
} else {
authnav = '<li class="last"><a href="auth/login">login</a></li><li><a href="auth/create_account">create account</a></li>'
}
document.getElementById("authnav").innerHTML = authnav
}
答案 1 :(得分:0)
结果转载。你能用原始文件替换ie_scripts.min.js文件并检查它是否仍然失败......