jQuery,Colorbox,参数中的jQuery语法

时间:2011-11-25 14:18:01

标签: jquery syntax colorbox

我想做以下但是它不起作用。我再次肯定它应该 很简单,但我无法编译。

$(".villa-caller").colorbox({
    innerWidth: "850px",
    innerHeight: "500px",
    inline: true,
    href: "#"+$(this).attr("rel")+"",
    onClosed:function(){colorbox_closed();}
});

href 参数上,我使用jQuery语法从被点击的元素中获取 rel 属性的值。

感谢您的帮助

3 个答案:

答案 0 :(得分:3)

我认为这里的问题是由于this的范围。请尝试以下方法:

$(".villa-caller").each(function() {
    $(this).colorbox({
        innerWidth: "850px",
        innerHeight: "500px",
        inline: true,
        href: "#" + $(this).attr("rel") + "",
        onClosed:function(){ colorbox_closed(); }
    });
});

这应确保this是您.villa-caller初始化的colourbox元素。

答案 1 :(得分:0)

我认为问题是你在这里使用它是因为我不认为它引用了你的想法(当前具有类“villa-caller"

的对象
href: "#"+$(this).attr("rel")+"",

编辑 - 你可以做到

$(".villa-caller").each(function() {
    var href = "#" + $(this).attr("rel");
    $(this).colorbox({
      innerWidth: "850px",
      innerHeight: "500px",
      inline: true,
      href: href ,
      onClosed: colorbox_closed()
});

答案 2 :(得分:0)

编辑:

尝试以下方法:

更改

href: "#"+$(this).attr("rel")+""

href: "#"+$(".villa-caller").attr("rel")