Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/467.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
javascript中的setattribute_Javascript - Fatal编程技术网

javascript中的setattribute

javascript中的setattribute,javascript,Javascript,这是我的代码,用于动态地将onclick属性设置为links,但如果我不单击链接本身,则会触发警报 window.onload = function() { var links = document.getElementsByTagName("a"); for(var i=0;i<links.length;i++) { elm = links[i]; elm.setAttribute("onclick", alert("you clicked

这是我的代码,用于动态地将
onclick
属性设置为links,但如果我不单击链接本身,则会触发警报

window.onload = function() {
    var links = document.getElementsByTagName("a");
    for(var i=0;i<links.length;i++) {
        elm = links[i];
        elm.setAttribute("onclick", alert("you clicked a lik"));
    }
}
window.onload=function(){
var links=document.getElementsByTagName(“a”);

对于(var i=0;i将相应的行更改为:

elm.setAttribute("onclick", function() { alert("you clicked a link");});
如果将函数调用(如
alert('msg')
)作为参数传递,则函数将在IMeditaly中执行,实际传递的参数是函数的返回值。您只需将eventHandler代码包装到匿名函数中即可。
此外,您还可以声明一个处理事件的函数,并将其名称作为参数发送:

function handleClick() { alert("you clicked a link");}
elm.setAttribute("onclick", handleClick);
注意:我建议使用
addEventListener
功能,而不是使用普通的旧OneEvent内联属性:

elm.addEventListener('click', function() { alert("you clicked a link");}, false);

尝试将alert语句放入一个匿名函数中

window.onload = function()
{
    var links = document.getElementsByTagName("a");
    for(var i=0; i < links.length; i++)
    {
        links[i].setAttribute("onclick", function () {
            alert("you clicked a link");
        });
    }
}
window.onload=function()
{
var links=document.getElementsByTagName(“a”);
对于(变量i=0;i
必须小心点击这些LIK,以错误的角度捕捉它们,你会得到正确的润湿。是的,很有趣。复制粘贴就是这样做的。