【发布时间】:2012-07-22 00:35:35
【问题描述】:
我有以下花式框代码:
$('.fancybox').fancybox({
'autoScale' : false,
'href' : $('.fancybox').attr('id'),
'type':'iframe',
'padding' : 0,
'closeClick' : false,
//some other callbacks etc
问题是我在页面上有 20 个不同的 A 标记 id,我希望 fancybox href 属性获取被点击元素的 id,即触发事件的那个。
我尝试了几件事,但都没有奏效!
'href' : $(this).attr('id'),
'href' : $(this.element).attr('id'),
这看起来很简单,但任何时候我插入“this”或类似的东西都不起作用。
【问题讨论】:
-
使用
id属性和href属性有什么区别? ... 让 html 做得更好(不要过度使用 jQuery)你可以在你的<a>标签中拥有 20 个不同的 ID,但它们都可以共享相同的class="fancybox",这样你的上面的脚本就可以无缝运行,而且不会使事情变得过于复杂. -
在我之前的评论之后,您只需删除
hrefAPI 选项,fancybox 将从<a>标记中的href属性中获取它。 -
虽然我的 href 是非标准的,但客户端不希望页面上有 20 个不同的链接,所以我在其中使用带有“#”的 href,并且在代码中的某个时刻我需要 JS 发送它到我存储在 id 中的真实 href。接受建议!
标签: javascript jquery fancybox fancybox-2