我正在为通过 PhoneGap 移动应用中的 iframe 显示的网站构建内容。内容是从 CMS 中提取的,该 CMS 也为主网站提供内容,因此它混合了内部链接和 target="_blank"链接。
处理 target="_blank"链接在 PhoneGap 中被证明是有问题的,因此我想在应用程序网站中禁用它们而不触及内容,因为它也在主网站上使用。
我需要的是在页面加载时运行的 jQuery,查找具有 target="_blank"属性的所有链接并使链接成为普通文本。
这样的东西( How to disable all links before load jQuery? )会禁用所有链接,但我只想禁用具有 target="_blank"属性的链接,并且我想隐藏这些单词首先是链接的事实:
var links = document.links;
for (var i = 0, length = links.length; i < length; i++) {
links[i].onclick = function(e) {
e = e || window.event;
e.preventDefault();
}
}
所以我不想简单地在链接点击时阻止Default(),而是在保留链接文本的同时完全删除链接,并且我只想将其应用于 target="_blank"链接。
最佳答案
$('a[target="_blank"]').each(function(){
$(this).removeAttr('href');
});
或者如果您想完全删除a
标签
$('a[target="_blank"]').each(function(){
$(this).replaceWith($(this).text());
});
关于jquery - 禁用页面上所有目标 ="_blank"链接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16355100/