我有不同的容器可以在不同的事件上重新加载。我有很多,所以我给每个容器分类load
。
这就是他们所有人的样子:
<div class="load" data-href="facebook">
</div>
我还有一个由各种动作触发的功能:
function get_timing(time)
{
$(".load").load("myfolder/mod_"+$(this).attr("data-href")+".php?action="+time, function() {
alert('Here I could use this:' + $(this).attr("data-href"));
}
}
我知道在上面的例子中我不能使用this
,我只能在回调中使用它。我的问题是:如何使用对象的属性来定义加载函数的路径。
这就是它的工作原理:
function get_timing(time)
{
$(".load").fadeIn(10, function()
{
$(this).load("myfolder/mod_"+$(this).attr("data-href")+".php?action="+time, function() {
alert('loaded');
}
}
}
有没有办法在没有asynchronus函数的情况下执行此操作(在本例中为.fadIn
))
希望我能解释一下我的问题 - 提前谢谢你!
答案 0 :(得分:2)
如果你想要上课,你可以通过索引来引用它们:
var element = $(".load").get(0);
console.log($(element).attr("data-href"));
请注意,您必须通过element
重新jQueryfy $(element)
才能访问attr()
如果您想要读出给定班级的所有元素,我建议$.each()
//$.each($(".load"), function(index, value){
$(".load").each(function(index, value){
console.log( $(value).attr("data-href"));
});
答案 1 :(得分:0)
尝试为您的容器指定一个ID:
<div class="load" data-href="facebook" id="facebookcontainer">
</div>
然后,您可以在javascript中使用$("#facebookcontainer")
而不是使用它。