如何为页面中的每个“a”标记执行此操作。我的目标是使用此搜索结果来访问Google搜索结果而无需谷歌重定向(在href属性中使用),因为实际链接存储在data-href属性中。所以使用Tampermonkey和以下脚本不起作用,我不知道为什么:
$('body').append('<input type="button" value="Fix Href Attributes" id="GG">');
$("#GG").css("position", "fixed").css("top", 18).css("left", 770);
$('a').each(function(){
var $currentA = $(this);
var dataHref = $currentA.attr('data-href');
$currentA.attr('href',dataHref);
});
我该怎么做?
答案 0 :(得分:0)
更新元素的代码是正确的,你只是太快解雇它。根据点击的按钮触发它:
$('body').append('<input type="button" value="Fix Href Attributes" id="GG">');
$("#GG").css("position", "fixed").css("top", 18).css("left", 770).on("click", function() {
$('a').each(function() {
var $currentA = $(this);
var dataHref = $currentA.attr('data-href');
$currentA.attr('href', dataHref);
});
});
当然,没有理由你需要给它一个ID并在追加它后查找它:
$('<input type="button" value="Fix Href Attributes">')
.css({
position: "fixed",
top: 18,
left: 770
})
.on("click", function() {
$('a').each(function() {
var $currentA = $(this);
var dataHref = $currentA.attr('data-href');
$currentA.attr('href', dataHref);
});
})
.appendTo(document.body);