我有这样的代码:
document.body.innerHTML=data();
我希望在此代码完成后执行某些操作(url / split):
$(data).find('a').prop('href', function(_, href){
url = href.split('/');
return href.replace(url[2], 'someUrl');
});
如何将两个代码链接在一起?我试过了:
document.body.innerHTML=data().end().find('a').prop('href', function(_, href){
url = href.split('/');
return href.replace(url[2], 'someUrl');
})
不起作用,尝试了其他一些没有运气的变化。
答案 0 :(得分:1)
也许试试:
document.body.innerHTML = $(data).find('a').prop('href', function(_, href){
url = href.split('/');
return href.replace(url[2], 'someUrl');
}).wrap("<div>").parent().html();
我不完全确定你的data()
和$(data)
之间的区别,因为你混合它们但它们完全不同。
无论如何,.prop(name, func)
的结果是之前的选定元素。因此,当您在链中的最后一次调用是.prop(name, func)
时,您尝试将document.body.innerHTML
设置为jQuery对象...基本上:document.body.innerHTML = $("element");
。但我认为你正在尝试获取data
的HTML,这就是我添加的额外链接应该做的事情。