jquery脚本仅在页面加载期间起作用

时间:2017-02-19 23:26:50

标签: jquery css joomla

我有一个奇怪的问题,我似乎无法弄明白: 我正在使用Joomla模板,该模板应该具有淡入/切换另一层的按钮。 使用过的脚本非常简单和常见:

按钮:<button style="text-align: center;" id="button" class="btn btn-lg btn-success btn_daytours" data-ap-original-font-size="18px">Click here</button>

层:<div class="tour_calendar" style="display: none;"><div class="moduletable span12">...</div></div>

脚本:// TOGGLE LAYER

$(window).load(function(){
    $("#button").click(function(){
        $("#tour_calendar").fadeToggle();
$(this).toggleClass("active"); return false;
    });
});

...并且该设置似乎没有任何问题,但问题是该脚本仅在页面加载时才起作用。一旦它完全加载,它就不再响应了。 我试图将函数放在代码中的不同位置,但问题仍然存在。 我不是一个真正的编码人员,而且萤火虫没有显示任何冲突,所以任何提示都会受到赞赏。 请亲自尝试:https://biz211.inmotionhosting.com/~blackb78/blackbear2017/

提前

和thanx

4 个答案:

答案 0 :(得分:1)

$(window).load(function() { ... });已弃用,.load()甚至已更改功能成为ajax处理函数。

尝试更改为:

$(window).on('load',function() { ... });

答案 1 :(得分:0)

尝试删除$(window).load(function() {});并直接放置此代码。

$("#button").click(function(){
    $("#tour_calendar").fadeToggle();
    $(this).toggleClass("active"); 
    return false;
});

试试吧。

答案 2 :(得分:0)

似乎没有id&#34; tour_element&#34;的元素。相反,有一个带有类&#34; tour_element&#34;的元素。因此,我建议将const array = [ {name: "Something", value: null}, {name: "SomethingB", value: "ValB"}, {name: null, value: "ValC"}, ] console.log( array.map(({name, value}) => ({ name : (name === null) ? "" : name, value : (value === null) ? "" : value })) )更改为$("#tour_calendar").fadeToggle();

答案 3 :(得分:0)

$("#button").click(function(){
$("#tour_calendar").fadeToggle();
$(this).toggleClass("active"); return false;
});

然后

$(window).load(function(){
$( "#button" ).trigger( "click" );
});

如果你想要其他地方的例子,

$(document).bind(function()){
 $( "#button" ).trigger( "click" );
}

任何其他地方只需在函数

中使用以下代码
$( "#button" ).trigger( "click" );

多数民众赞成