为什么 不能响应 onclick 事件?在线等
时间:2011-10-07
来源:互联网
//========================================================
GraphicsOverlay.prototype.DrawOnDiv = function ()
{
var div = document.createElement('DIV');
div.style.position = "absolute";
for (var k = 0; k<20; k++)
{
var vectorgraphics_Oval = this.CreateOvalObj(ScrnX[k], ScrnY[k]); // 用 VML 画点
vectorgraphics.onclick = function{abc();};
div.appendChild(vectorgraphics_Oval); // 所有点都加到 DIV 上去,
}
// .. 省略
}
//========================================================
发现只有 append 上的最后一点才能响应 mouse click, 为什么呢???
如果我把 div.appendChild(vectorgraphics_Oval); 换成 document.body.appendChild(vectorgraphics_Oval);
那所有的点都是可以响应 mouse click 的。 但这不是我要的结果,画图不正确。
谢谢大家
作者: ghostiger 发布时间: 2011-10-07
你只创建了一个DIV,然后不断的给这个div添加appendChild,当然只有最后一次的有效啊
你把创建div写到循环里,然后给每个div添加appendChild试试看?
作者: butcher2002 发布时间: 2011-10-07
作者: ghostiger 发布时间: 2011-10-07
var div = document.createElement('DIV');
你只创建了一个DIV,然后不断的给这个div添加appendChild,当然只有最后一次的有效啊
你把创建div写到循环里,然后给每个div添加appendChild试试看?
作者: ghostiger 发布时间: 2011-10-07
{
code
}
作者: zxy397472251 发布时间: 2011-10-07
var vectorgraphics_Oval = this.CreateOvalObj(ScrnX[k], ScrnY[k]); // 用 VML 画点
vectorgraphics.onclick = function{abc();};
明明创建对象赋值给了vectorgraphics_Oval 可是却给vectorgraphics添加了onclick 事件,再把vectorgraphics_Oval 追加到div上....
不懂vectorgraphics_Oval 和vectorgraphics 是什么关系...也许代码没贴全?
作者: butcher2002 发布时间: 2011-10-07
var vectorgraphics_Oval = this.CreateOvalObj(ScrnX[k], ScrnY[k]); //用VML画点
vectorgraphics_Oval.onclick = function{abc();};
其实我也看不太懂你的代码...7年没上CSDN了...
var vectorgraphics_Oval = this.CreateOvalObj(ScrnX[k], ScrnY[k]); // 用 VML 画点
vectorgraphics.onclick = function{abc();};
明明创建对象赋值给了vectorgraphics_Oval 可是却给vectorgraphi……
作者: ghostiger 发布时间: 2011-10-07
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28