自动点击页面加载quicksand jquery

时间:2015-09-29 17:37:15

标签: javascript jquery

我正在使用quicksand jquery,我已经搜索了解决方案,但没有工作。我试图在页面加载时自动点击一个类别来过滤我想要过滤的内容。

以下是页面上允许用户点击和过滤的链接

<li><a href="javascript:void(0);" id="all">Everything</a></li>
<li><a href="javascript:void(0);" id="cat1">cat1</a></li>
<li><a href="javascript:void(0);" id="cat2">cat2</a></li>
<li><a href="javascript:void(0);" id="cat3">cat3</a></li>
<li><a href="javascript:void(0);" id="cat4">cat4</a></li>

当页面加载时,它会显示所有项目,然后用户可以选择要过滤的类别。我想自动点击一个,我正在寻找生成点击的功能。

这是我尝试过的解决方案:

   <script type="text/javascript">
   $(document).ready(function() {
   $(".filter li a.cat2").trigger('click');
  });
 </script>

and
      <script type="text/javascript">
       $(document).ready(function() {
      $(".filter li a.cat2").trigger('click');
     });
    </script>

and

<script>
$(function() {
// It would be better to create a function for this, but
// to avoid code duplication the click() event is triggered/reused
$('.filteroptions li a cat2').click();
});
 </script>

这是它运行的js文件以及为什么我选择删除“filteroptions”并尝试“过滤”,如其他帖子中所建议的那样。因为我的节目显示“.filter li a”而不是过滤次数

// DOMContentLoaded
 $(function () {
// bind radiobuttons in the form
var $filterType = $('.filter li a');

// get the first collection
var $applications = $('#list');

// clone applications to get a second collection
var $data = $applications.clone();



// attempt to call Quicksand on every form change
$filterType.click(function (e) {

    $('.filter li a').removeClass('selected');
    $(this).addClass('selected');
    if ($(this).attr('id') == 'all') {
        var $filteredData = $data.find('li');
    } else {
        var $filteredData = $data.find('li[class=' + $(this).attr('id') + ']');
    }
    // finally, call quicksand
    $applications.quicksand($filteredData, {
        duration: 800,
        easing: 'easeInOutQuad',
        attribute: 'id'
    }, function () {
        $("a[data-rel^='prettyPhoto']").prettyPhoto({ animationSpeed: 'slow', social_tools: false, slideshow: 2000 });
    });
});

});

以下是您可能会说的其他帖子相同,但我尝试了它们并且它们不起作用。他们使用的是较旧的流沙。

JQuery Quicksand: Link directly to pre-filtered Quicksand from another page

First open limited item not all in jQuery Quicksand?

1 个答案:

答案 0 :(得分:2)

您在非课堂上使用ID,因此请将您的点击触发器更改为

$(".filter li #cat2").trigger('click');