gpt4 book ai didi

javascript - jQuery .delegate 不工作

转载 作者:行者123 更新时间:2023-11-28 02:15:37 25 4
gpt4 key购买 nike

以下代码可以在页面加载时切换类,但在 Ajax 调用后不起作用。

html([field_map_location] 是一个 Drupal 标记):

<div class="clearfix dir-map">
<a href="#" class="show">Map</a>
<div id="slidingDiv" class="outside">
[field_map_location]
</div>
</div>

JavaScript:

<script type="text/javascript">
jQuery(function($) {
$(document).ready(function() {
$('.dir-map').delegate('a', 'click', function(e) {
e.preventDefault();
$(this).next('div').toggleClass('outside inside');
});
});

});
</script>

更新我已经尝试了以下推荐的解决方案,但仍然不起作用。

<script type="text/javascript">
jQuery(function($) {
$(document).delegate('.dir-map a', 'click', function (e) {
e.preventDefault();
$(this).next('div').toggleClass('outside inside');
});
});
</script>

抱歉,我是菜鸟,所以我不知道如何向您展示 AJAX 调用的代码。我可以告诉您,这个 html 是 Drupal View 的一部分,我正在使用它的 AJAX 功能。

最佳答案

Drupal 与 AJAX 的结合有时会很有趣;连接到 Drupal 自己的 JS 行为系统可能会有所帮助...

(function($) {
Drupal.behaviors.custom = {
attach: function(context, settings) {
$('.dir-map a', context).click(function (e) {
e.preventDefault();
$(this).next('div').toggleClass('outside inside');
});
}
};
})(jQuery);

有点过时的事件附加是因为 Drupal 7 仍然附带 jQuery 1.4.2。

关于javascript - jQuery .delegate 不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16445676/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com