
window.Onload= function() { alert('此 JS 代码可执行');
var oWeib = document.getElementById('weib'); var oCaid = document.getElementsByClassName('caid'); var oA = document.getElementById('wb'); function tan() { alert(oA.getAttribute('href')); } oA.setAttribute = ("href","www.baidu.com"); oA.Onclick= tan(); tan(); }
第一个 alert 和 tan()函数里的 alert 都会弹窗,但是后面的 set 就没有效果。 onclick 的点击事件也会被忽略然后直接触发 tan()函数。
1 zjsxwc Dec 17, 2018 oA.Onclick= tan; |
2 shintendo Dec 17, 2018 tan()是函数返回值,tan 才是函数 |
3 linchengzzz Dec 17, 2018 oA.Onclick= () => tan(); 或者 oA.Onclick= tan; |
4 lukunlin Dec 17, 2018 在 Js 里,记住,任何函数加()就是执行,除了.bind 一些特殊引向函数,然后你的函数没有写 return,那默认就是 return 的 undefined,所以你把一个函数执行的结果,undefined 复制给了一个 onevent,当然没效果 |
5 beyoung Dec 17, 2018 还以为是个大新闻呢 |