1

代码:

      <circle id="whitecircle" cx="500" cy="500" r="25" fill="url(#grad1)" onclick="setCoordinates(evt)"  />

这工作得很好。“setCoordinates(evt)” 函数在单击时为圆提供一个随机位置。

但是,当我用“onload”重播“onclick”时,它只会停留在“500,500”。

为什么是这样?

4

3 回答 3

3

该元素未加载任何外部内容。由于没有要加载的内容,因此它没有加载事件。

您可以在定义圆元素后立即运行脚本。

<circle ... />
<script> function_call() </script>

(HTMLbody元素是一个特例,代表当前文档)

于 2013-01-14T16:31:19.183 回答
2

<svg>在 Firefox 上,出于性能原因,仅将 onload 事件分派给元素。Firefox 存在一个关于不向<image>元素分派 onload 事件的错误,但目前只有<svg>元素可以跨浏览器工作。

于 2013-01-14T16:33:38.380 回答
0

onload 事件有时也会出现这个问题。将您的 javascript 调用移至页面末尾。

于 2013-01-14T16:33:48.643 回答