作者DrGod (跪求水桶)
看板Web_Design
标题Re: [问题] IE中如何用javascript改变onclick属性内容
时间Mon Feb 12 16:08:10 2007
※ 引述《chweng ()》之铭言:
: 以下是一个测试范例:
: <script>
: <!--
: function trigger() {
: document.getElementById("test").href = 'http://tw.yahoo.com/';
: document.getElementById("test").innerHTML = 'Yahoo!';
: if ((document.all)&&(document.getElementById)){ // For IE
: document.getElementById("test").onclick = 'alert("Changed!"); return
: false;';
: }
: document.getElementById("test").setAttribute('onclick', 'alert("Changed!");
: return false;');
: }
: -->
: </script>
: <a id="test" href="http://www.google.com/" onclick="trigger(); return
: false;">Google</a>
: 此范例在 Firefox 以及 Opera 下皆能正常运作。
: 原本超连结是显示 Google,按一下连结之後,文字变为 Yahoo!,
: href 以及 onclick 属性也跟着改变。
: 但是在 IE6 下就无法正常工作。想请问如果我要改变超连结内 onclick 属性的值,
: 应该要怎麽写,才能在 IE 下正常工作呢?
在外面套一个 span,重写内部html
function trigger()
{
document.getElementById("spTest").innerHTML="<a href='..' onclick='..'></a>"
}
<span id="spTest"><a onclick="trigger();">Google</a></span>
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 211.99.222.55