我不明白发生了什么...
我有一个简单的用户脚本,它在我访问的页面中添加了几个 DIV、css 样式和 JS 函数
特别是,我有一个 DIV 可以触发一个带有 onClick 侦听器的 JS 函数 - 这个函数是一个“切换”功能(显示/隐藏另一个 DIV):
function togglegm(etat) {
if (etat = 'on') {
document.getElementById('greasemky').style.display = 'block';
document.getElementById('greasemkytoggle').innerHTML = '<a href="javascript:return(false);" onClick="togglegm(\'off\');"></a>';
} else if (etat = 'off') {
document.getElementById('greasemky').style.display = 'none';
document.getElementById('greasemkytoggle').innerHTML = '<a href="javascript:return(false);" onClick="togglegm(\'on\');"></a>';
}
}
var script2 = d.createElement('script');
script2.appendChild(d.createTextNode(togglegm));
(d.body || d.head || d.documentElement).appendChild(script2);
DIV“greasemkytoggle”只包含一个带有触发“togglegm('on')的onClick的链接,我的目标是当执行togglegm(on)时,这个DIV的innerHTML成为togglegm(off)的触发器。
现在奇怪的部分......当我点击我的 DIVgreasemkytoggle 时,函数 togglegm(on) 被完美执行(显示greasemky),innerHTML 完全改变了“togglegm(off)”的链接,但是如果我点击再一次,然后什么也没有发生。
我查看源代码,发现我的 JS 函数就这样消失了(这就是为什么最后一次点击什么都没有发生的原因)!现在,有一个空函数替换了我的 togglegm():
<script>
scriptHolderArray1
</script>
你理解这种行为吗……?
对于这种情况,我在网上没有找到任何东西......