js 动态创建 a 元素 添加事件的时候报错了 说类型不匹配
vara=document.createElement("a");a.attachEvent("onmouseover","this.style.backgroundIm...
var a = document.createElement("a");
a.attachEvent("onmouseover", "this.style.backgroundImage='url(yxjg.jpg)'");
a.attachEvent("onmousedown", "this.style.backgroundImage='url(yxjg.jpg)'");
a.attachEvent("onmouseout", "this.style.backgroundImage='url(yx.jpg)'");
以上代码 可以复制来测试下就知道了 会报错 ,,, 请问应该怎样给这三个赋值呢? 因为a 是动态创建出来的 而不能通过前台html 直接赋值 好纳闷 展开
a.attachEvent("onmouseover", "this.style.backgroundImage='url(yxjg.jpg)'");
a.attachEvent("onmousedown", "this.style.backgroundImage='url(yxjg.jpg)'");
a.attachEvent("onmouseout", "this.style.backgroundImage='url(yx.jpg)'");
以上代码 可以复制来测试下就知道了 会报错 ,,, 请问应该怎样给这三个赋值呢? 因为a 是动态创建出来的 而不能通过前台html 直接赋值 好纳闷 展开
展开全部
//attachEvent第二个参数是函数,不是字符串,改成:
a.attachEvent("onmouseover", function () { this.style.backgroundImage = 'url(yxjg.jpg)' });
追答
改成:
a.attachEvent("onmouseover", function (e) { e.srcElement.style.backgroundImage = 'url(yxjg.jpg)' });
完整代码:
<head>
<title>ABC</title>
<script type="text/javascript">
function toC() {
var a = document.createElement("a");
a.innerHTML = "newA";
a.attachEvent("onmouseover", function (e) { e.srcElement.style.backgroundImage = 'url(yxjg.jpg)' });
document.body.appendChild(a);
}
</script>
</head>
<body>
<input type="button" onclick="toC()" value="createElement"/>
</body>
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询