如果我有一系列按钮,我怎么知道哪个按钮被点击了? 以下示例
var i=0
CreateButton = new function () {
savebutton[i]=NewButton()
i++
}
每次用户运行该功能时,都会生成一个新按钮。
第一个按钮是savebutton[0]
,第二个按钮是savebutton[1]
,因此可能是无限时间。
稍后用户按下按钮时,我希望屏幕提醒其索引号(或“i
”)。
有没有办法让这个工作在数组中?
this:savebutton [i] .click(alert(this)) 这个:savebutton [i] .onClick(alert(this)) 不工作
代码完全用RephaelJs编写,绝对不包含DOM元素。
我使用RaphaelJS,我的HTML文档不包含DOM元素。一切都是脚本化的。
生成按钮的整个函数:
var insertframe = function () {
ww = WindowWidth
mw = mywindoww
zx = zone.getBBox().x
zy = zone.getBBox().y
zw = zone.getBBox().width
zh = zone.getBBox().height
sh = screen.getBBox().height
sw = screen.getBBox().width
py = picy
px = picx
srw = screenratiow
srh = screenratioh
savebutton[i] = paper.image(imageurl)
savebutton[i].attr(
{
'width': px * (framewidth * miniframesize) / zw,
'height': py * (frameheight * miniframesize) / zh,
'x': ((srw*520) + (i * 120) * srw) - zx * (frameheight * miniframesize) / zh,
'y': srh*600 - zy * (framewidth * miniframesize) / zw,
'clip-rect': (srw*520) + (i * 120) * srw + "," + srh * 600 + "," + framewidth * miniframesize + ',' + frameheight * miniframesize
})
savebutton[i].click(alert(this))
i++
}
答案 0 :(得分:0)
您可以使用2d数组,每个元素都有ID和标识符。如果没有看到您的代码,就不能说太多了。
答案 1 :(得分:0)
我认为JQuery可以帮助您更轻松地实现这一目标。看看这个: http://api.jquery.com/index/
希望这有帮助!
答案 2 :(得分:0)
创建按钮时,可以将数组中的索引作为按钮的属性进行分配,然后在单击该按钮时,可以检查单击按钮的属性以查看它在数组中的位置。
如果您不想这样做,您还可以搜索数组并找到当前按钮在数组中的位置。