如何使用jQuery在新窗口中打开.pdf
文件扩展名的所有链接?我需要改变这样的:用.pdf打开任何链接用jQuery在新窗口中打开?
<a href="domain.com/pdf/parkingmap.pdf">parking map</a>
在此:
<a href="domain.com/pdf/parkingmap.pdf" target="_blank">parking map</a>
所有文件都在一个文件夹/pdf
是否有帮助。
如何使用jQuery在新窗口中打开.pdf
文件扩展名的所有链接?我需要改变这样的:用.pdf打开任何链接用jQuery在新窗口中打开?
<a href="domain.com/pdf/parkingmap.pdf">parking map</a>
在此:
<a href="domain.com/pdf/parkingmap.pdf" target="_blank">parking map</a>
所有文件都在一个文件夹/pdf
是否有帮助。
要达到此目的,您可以选择任何a
元素,其中href
属性以.pdf
结尾,并为其添加target="_blank"
属性。试试这个:
$(function() {
$('a[href$=".pdf"]').prop('target', '_blank');
});
的一种方式,假设你要链接不在pdf
结束在同一个页面打开:
$('a').click(
function(e){
e.preventDefault();
if (this.href.split('.').pop() === 'pdf') {
window.open(this.href);
}
else {
window.location = this.href;
}
});
jQuery的一行代码:
$('a[href$=".pdf"]').attr('target','_blank');
而且in vanilla Javascript:
[].filter.call(document.querySelectorAll('a'), function(a){
return a.href.match('\\.pdf$') ? a.target = '_blank' : 0;
});
或许:
var anchors = document.body.getElementsByTagName('a');
for (var i = 0; i < anchors.length; i++) {
if(anchors[i].getAttribute('href').match('\\.pdf$') {
anchors[i].setAttribute('target', '_blank');
}
}
为什么downvote? – gabssnake
'.prop()'或'.attr()'? – Sablefoste
是否有你使用'.prop('target','_blank');'而不是'.attr('target','_blank')的理由? – sircapsalot
@SableFoste'.prop()' –