我有一个span我有一个achor标签。对于锚标签,我使用了DojoAttachEvent,现在在我的代码中somwhere我替换span的innerHTML如下所示。
<span id ="xyz"> <a dojoAttachEvent="onmouseover:_myfunction"> txt223 </a> </span>
现在我替换span的文本如下:
var tmptxt = dojo.byId("xyz").innerHTML
dojo.byId("xyz").innerHTML = "some more txt" +tmptxt
现在运行此代码后,当onmoveover被触发时,函数_myfunction不会被调用。
我知道我可以通过使用两个跨度来解决问题,一个用于下一个txt,一个用于锚点,但由于一些css问题(我得到每个跨度在新线上,它有两个colum css,如果我使用2个跨度txt和锚点来自我们不想要的2个不同的线路。我不能这样做。
我尝试使用dojo.connect,但问题是因为某个向导中存在我的span,当我在页面上而不是向导当前页面的页面时触发事件。
答案 0 :(得分:0)
试试这个代码。可能会有帮助。
<span id ="xyz"> <a dojoAttachEvent="onmouseover:_myfunction();return true;"> txt223 </a> </span>
答案 1 :(得分:0)
首先,如果这不在小部件模板中,dojoAttachEvent
不是您想要的 - 您可能需要更像onMouseOver="_myfunction();"
的内容。
其次,如果你用事件替换有关节点的父节点的innerHTML,那么你自然会最终破坏该节点的存在,并且事件以及它,你必须以这种或那种方式再次连接它。有没有理由你不能更加小心你的DOM操作?比如,在a
标记上添加一个ID(或从span
查询)并仅更改该节点的innerHTML?