无论如何在单击表格TD单元格内部时弹出一个facebox对话框

时间:2010-02-22 03:52:28

标签: jquery html-table facebox

当我点击html表格中的td时,我想弹出一个对话框facebox。这可能吗?

https://github.com/defunkt/facebox

1 个答案:

答案 0 :(得分:3)

TD作为代理...

如果你有链接,你可以这样做:

$("td").click(function(){
  $("a[rel='facebox']", this).trigger("click");
});

当然,稍微修改一下代码,你可以通过点击页面上的其他任何内容来调用任何链接的facebox。基本上,td元素可以作为您的代理。如果单击它,它会触发能够打开面板的链接上的单击。

没有链接?没问题......

如果您没有点击链接,可以创建其中一个,触发点击,然后将其删除。

$("td").click(function(e){
  $("<a>") // create our link
    .click(function(e){e.stopPropagation()}) // prevent bubbling
    .attr({ // set its attributes
      'href':'/css/style.css?'+$(this).text(), // append td vals
      'rel':'facebox' // make it facebox-eligible
    })
    .appendTo(this) // append it to the td
    .facebox() // tie it to facebox
    .click() // click it
    .remove(); // remove it
});​

所以假设我们开始时:

<td>52</td>

我们将有一个iframe弹出窗口指向:/css/style.css?52