如何调用click()元素?

时间:2014-07-23 10:57:30

标签: javascript jquery click

我使用的是lightgallery插件,其中click事件定义为:

$(document).on('click', 'a[rel^=lightbox], area[rel^=lightbox], a[data-lightbox], area[data-lightbox]', function(event) {
    self.start($(event.currentTarget));
    event.preventDefault();
});

但是,当我尝试这样调用事件时:

$(".catalog-content a[data-lightbox='test']").first().trigger('click');

......它似乎不起作用。我究竟做错了什么?如何触发click事件?

示例jsFiddle

3 个答案:

答案 0 :(得分:1)

使用jQuery“模拟点击”,你是正确的,你可以使用.trigger(...)方法:

$(".myClass").trigger("click");

真正的问题是您“点击”不存在的内容。 没有 ".catalog-content a[data-lightbox='test'元素。正如Velthune建议的那样,您可以将.catalog-content类添加到div容器中以解决此问题;但请注意,也没有a[data-lightbox='test']元素。

相反,在你的小提琴中你定义了以下内容:

<a href="http://..." data-lightbox="350xi" id="test">
    something
</a>

因此,您实际上只想点击第一个a元素,其data-lightbox属性为“350xi”:

$("a[data-lightbox='350xi']").first().trigger("click");

答案 1 :(得分:0)

嘿,我已经通过了jsfiddle并更新了它,请通过它..

$(document).ready(function() { 
    $(".cars-container a[rel!='']").click(function() {
        var rel = $(this).attr("rel"); 
        $(".cars-container a[data-lightbox='" + rel + "']:first").trigger('click');
    });
});

点击jsfiddle链接下方查看工作示例: - http://jsfiddle.net/wHJ8E/3/

答案 2 :(得分:0)

你的小提琴代码无效。

1)使用Devendra建议的其他选择器 2)或者将.catalog-content类添加到div容器中:

<div class="cars-container catalog-content"> 

<强> Fiddle

3)Devendra和我都无法理解。