JS多功能执行
JS multiple function execution
我使用的是www.onextrapixel.com上的youtube loadingbar工具,它对所有内容都很简单。
但是,我有多个<a>
标签,它们具有不同的href
属性,并将加载具有不同内容的内容区域(目标)。问题是当我将loadingbar函数初始化为一个类时,比如:
$('ajax-call').loadingbar(options);
我有多个相同类别的a标签,比如:
<a id ="link1" class = "ajax-call" href="hello1.html" data-type="POST" data-target="#Content_Area">Link 1</a>
<a id ="link2" class = "ajax-call" href="hello2.html" data-type="POST" data-target="#Content_Area">Link 2</a>
<a id ="link3" class = "ajax-call" href="hello3.html" data-type="POST" data-target="#Content_Area">Link 3</a>
<a id ="link4" class = "ajax-call" href="hello4.html" data-type="POST" data-target="#Content_Area">Link 4</a>
在本例中,我有4个链接,因此ajax调用以及success和done函数将重复4次。每次它加载相同的(正确的)内容,并为每个相应的链接执行相同的函数(正确的函数),但它这样做了4次,这导致一切都完全混乱,因为我正在初始化其他对象(初始化了4次)。
所有内容看起来都是正确的,但内容区域中没有任何内容(模式等)
如果我在侧菜单中只做一个链接,一切都很好。如果我按ID分别初始化每个链接,一切都很好,但如果我把它们都分组在一个类中,就会发生这种情况。我该如何解决此问题?
类以句点开头
$('.ajax-call').loadingbar(options);
看起来这个插件写得很糟糕,它没有返回this.each(function()..
,只是做了
$.fn.loadingbar = function(options){
el = $(this),
href = el.attr("href"),
target = el.data("target"),
...etc
因此,在元素集合上调用它可能无法正常工作,请尝试
$('.ajax-call').each(function() {
$(this).loadingbar(options);
});
相关文章:
- 如果未按下该按钮,则在30秒内自动执行该功能
- 只要用户将鼠标悬停在jQuery中的某个元素上,就可以执行多次单击
- 如何在angularjs中按顺序执行多数据ng应用程序
- 对页面上的所有ID执行JS功能
- 如何停止函数在JavaScript中执行多次
- 如何防止jQuery中复选框单击时执行多个代码
- Jquery回调函数执行多次
- 为什么我在单个事件上执行多个
- 使用多功能框在 chrome 扩展程序中包含内联自动填充功能的任何方法
- 脚本执行多次
- 如何在三元运算的结果上执行多个函数
- SQLite+Javascript:在每个其他函数中执行多个查询
- 如何通过一个回调异步排队和执行多个promise
- clearInterval无法执行shuffle功能
- 我正在尝试使用JS/JQuery自动对网站中的文本执行多个查找和替换操作
- 页面内容加载完毕后执行Jquery功能
- 如何在一次有条件的ng单击时执行多个调用
- 是否有一种方法可以在节点中同步执行多个JavaScript文件
- 使用jQuery并行执行多个promise后等待完成
- JS多功能执行