gpt4 book ai didi

javascript - "Cannot read property ' createDocumentFragment ' of undefined"

转载 作者:塔克拉玛干 更新时间:2023-11-02 22:58:38 25 4
gpt4 key购买 nike

$(document).ready(function(){
$(".item-title a").each(function(index) {
var yaz = $(this).attr("href");
$.ajax({
url: 'https://api-metrica.yandex.com/analytics/v3/data/ga?end-date=today&ids=ga%3A35416355&dimensions=ga:pagePath&metrics=ga:pageviews&filters=ga:pagePath=='+yaz+'&start-date=2015-10-25&oauth_token=AQAAAAAVs-uLAASpEAf-MmJK_kHgpU9Fwv8WArM',
type: 'get',
dataType: "jsonp",
success: function(data){
$(this).append(data.rows);
}
});
});
});

控制台:未捕获的类型错误:无法读取未定义的属性“createDocumentFragment”

有什么问题?
请帮忙。

最佳答案

这是因为 success 回调中的 this 上下文。它没有像您期望的那样指向回调中的 jQuery 对象。它将引用当前上下文。

success: function(data){  
$(this).append(data.rows);;
}

this 的上下文保存在 success 之外并重新使用。

var cachedThis = this;

$.ajax({
...
success: function(data){
$(cachedThis).append(data.rows);;
}
...
});

相反,您可以使用 bind 方法来锁定上下文。

$.ajax({
...
success: function(data){
$(this).append(data.rows);;
}.bind(this)
...
});

关于javascript - "Cannot read property ' createDocumentFragment ' of undefined",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47443663/

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