2013-10-24 56 views
0

如果我有一个按钮阵列,我怎么知道哪个按钮被点击?每一个用户运行时生成一个新的按钮的功能时 例如低于在一组按钮中,如何判断哪个按钮被点击?

var i=0 
CreateButton = new function() { 
    savebutton[i]=NewButton() 
    i++ 
    } 

。 第一个按钮是savebutton[0]第二个是savebutton[1]等可能是无穷大时间。

当用户按下按钮时,我希望屏幕提醒其索引号(或'i')。

有什么办法可以在数组中做这项工作吗?

此:savebutton [I]。点击(警报(本)) 和此:savebutton [I] .onClick(警报(本)) 不起作用

代码被完全写入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

欢迎来到Stack Overflow。我们不可能在没有看到更多背景的情况下为您提供帮助。你可以在这里发布你的实际的完整代码吗? –

+0

我加了相关的功能。代码是500行,与此特定功能无关。如果我的原始“最小化”功能可以工作,我可以很容易地将它整合到整个文档中。如果你仍然觉得整个文档是绝对关键的,我会把它放在jsfiddle –

回答

0

当您创建按钮时,您可以将其索引从数组中分配为按钮的属性,然后单击该按钮时,可以检查点击按钮的该属性以查看它在数组中的位置。

如果你不想这样做,你也可以搜索数组并找到当前按钮在数组中的位置。

+0

这是一个非常非常酷的想法! –

0

可以使用2D阵列与具有ID和标识符的每个元素。如果没有看到你的代码,不能说太多。

+0

如果我可以提醒任何按钮被按下的索引号我可以很容易地使它做我想做的事情。我将在编辑中添加整个功能,但它充满了我认为最终会使事情变得更糟的信息。 –

0

我认为JQuery可能会帮助您更轻松地实现这一目标。看看这个: http://api.jquery.com/index/

希望这有助于!

+0

它真的让我兴奋了一会儿,但可悲的是,我不认为这将适用于无限按钮,因为每个按钮必须在代码中有一个DOM元素(请纠正我,如果我错了) 真的很酷,但!谢谢! –

相关问题