这是我的函数
$(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();
});
});
});
我想运行它来隐藏行,然后在点击按钮时切换它来显示它们。如何在文档就绪时运行函数,然后在单击事件中再次运行该函数?
正如其他人在上面的评论中所说的,你可以把你在点击事件中调用的函数移到文档准备函数的顶部,然后在点击事件中(按名称)再次调用它:
$(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);
});
您在(document).ready()
作用域之外创建了function
,您应该能够从element
和已准备好的function
中调用
$(document).ready(function(){
myFunc(); // You call your function here
});
function myFunc() {
alert('click'); // You do your action here aka hide show
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<p onclick="myFunc();">click me </p><!--note the onclick attribute-->
您只需要添加一个。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();
})
});