代码:为什么“onload”不能在<circle>元素上工作?
<circle id="whitecircle" cx="500" cy="500" r="25" fill="url(#grad1)" onclick="setCoordinates(evt)" />
这工作得很好。 “setCoordinates(evt)”函数在被点击时给圆圈一个随机的位置。
但是,当我用“onload”重放“onclick”时,它只停留在“500,500”。
这是为什么?
代码:为什么“onload”不能在<circle>元素上工作?
<circle id="whitecircle" cx="500" cy="500" r="25" fill="url(#grad1)" onclick="setCoordinates(evt)" />
这工作得很好。 “setCoordinates(evt)”函数在被点击时给圆圈一个随机的位置。
但是,当我用“onload”重放“onclick”时,它只停留在“500,500”。
这是为什么?
该元素不加载任何外部内容。由于没有任何要加载的内容,因此它没有加载事件。
您可以在定义circle元素后立即运行脚本。
<circle ... />
<script> function_call() </script>
(在HTML元素body
是一个特殊的情况下,表示当前文档),仅调度到<svg>
元素性能原因
在Firefox的onload事件。 Firefox有一个关于不将onload事件分派到<image>
元素的bug,但目前只有<svg>
元素可以跨浏览器工作。
我也有这个问题,onload事件。 将您的JavaScript调用移动到页面末尾。
当你说“function_call()”时,你的意思是我在一对脚本标签中直接输入“setCoordinates(evt)”吗? –
除了'evt'位以外,因为您没有实际的事件。 (如果函数需要访问其属性,则可以用自定义对象替换它) – Quentin
不,对不起,不起作用。你能更具体一点请:/? –