如何运行onload函数然后再从onclick事件中再次调用它

时间:2016-08-19 16:09:32

标签: javascript jquery

这是我的功能

$(document).ready(function() {
    "use strict";

    var $rows_views = $('.view-display-id-block_1 .view-content').find('[class*="views-row-"]'); 
    $rows_views.each(function(index) { 
        $('.show-more').click(function() {
            if (index > (($rows_views.length / 3) - 1)) { 
                $('.views-row-' + (index + 1)).toggle(); 
            } 

            $('.pager').toggle(); 
        });
    });
});

我想运行它来隐藏行,然后在点击按钮显示它们时切换它。如何在文档就绪时运行函数,然后在单击事件中再次运行该函数?

2 个答案:

答案 0 :(得分:1)

正如其他人在上面的评论中所述,您可以将您在点击事件中调用的函数移到文档就绪函数的顶部,然后在单击事件中再次(通过名称)再次调用它: / p>

$(document).ready(function() {
    "use strict";

    // Invoke your function here
    callMeTwice();


    // define your function here
    function callMeTwice () {
        // Do some stuff
    }

    // Invoke your function again within the click event here
    $(domElement).click(callMeTwice);
});

答案 1 :(得分:0)

你只需添加.click()函数并将$ rows_vies_each放在函数中。

喜欢这个

$(document).ready(function() {
"use strict";

var clickMe = document.getElementById('idOfThingToClick')

var $rows_views = $('.view-display-id-block_1 .view-content').find('[class*="views-row-"]'); 

function bestFunction(){
  $rows_views.each(function(index) { 
      $('.show-more').click(function() {
          if (index > (($rows_views.length / 3) - 1)) { 
              $('.views-row-' + (index + 1)).toggle(); 
          } 

          $('.pager').toggle(); 
      });
  });
}
$(clickMe).click(function(){
  bestFunction();
})
});