Javascript Jquery打开此链接而不是其他链接
我有一系列的div,每个div里面都有一个链接 我想完成的是在另一个窗口中打开.pdf文件,如果链接以.pdf结尾,则打开.pdf文件,如果不打开,则什么也不做,或者以后再做决定 我遇到的问题是,当您单击链接时,它将打开与页面上.pdfs相同的文档 我试着在这把小提琴中复制这个问题: 但它不起作用。代码在我这边起作用 代码如下:Javascript Jquery打开此链接而不是其他链接,javascript,jquery,html,Javascript,Jquery,Html,我有一系列的div,每个div里面都有一个链接 我想完成的是在另一个窗口中打开.pdf文件,如果链接以.pdf结尾,则打开.pdf文件,如果不打开,则什么也不做,或者以后再做决定 我遇到的问题是,当您单击链接时,它将打开与页面上.pdfs相同的文档 我试着在这把小提琴中复制这个问题: 但它不起作用。代码在我这边起作用 代码如下: $('.somelink').click(function(eventObject) { var elem = $(this);
$('.somelink').click(function(eventObject) {
var elem = $(this);
if (elem.attr("href").match(/\.pdf$/i)) {
eventObject.preventDefault();
elem.attr('target', '_blank');
}
});
如果目标是PDF,则只需更改页面加载上的目标即可
$('.somelink').each(function() {
var elem = $(this);
if (elem.attr("href").match(/\.pdf$/i)) {
elem.attr('target', '_blank');
}
});
JSFiddle:
此HTML中的结果:
<div class="linkholder">
<a class="somelink" href="https://bitcoin.org/bitcoin.pdf" target="_blank">pdf 1</a>
</div>
<div class="linkholder">
<a class="somelink" href="http://www.pdf995.com/samples/pdf.pdf" target="_blank">pdf 2</a>
</div>
<div class="linkholder">
<a class="somelink" href="http://www.bing.com">.com</a>
</div>
<div class="linkholder">
<a class="somelink" href="http://www.google.org">.org</a>
</div>
注意:您的JSFIDLE没有选择jQuery,因此没有运行任何东西。您可以这样做:
$('.somelink').click(function(eventObject) {
var elem = $(this);
if (elem.attr("href").match(/\.pdf$/i)) {
eventObject.preventDefault();
window.open(elem.attr('href'));
}
});
请看这里:出于某种原因,此脚本的行为:
在木兰下,CMS的行为有点怪异
因此使用了以下代码:
$(".linkholder a[href$='pdf']").attr('target','_blank').addClass('pdf');
$(".linkholder a:not(a[href$='pdf'])").addClass('generic');
这是小提琴上的一个例子:
谢谢大家 感谢您添加库。问题是,每个浏览器都没有在Firefox中打开新页面,它只是提示我保存文件。@Luis:不同的浏览器以不同的方式处理下载。你试过吉勒姆·洛佩斯的建议吗?我刚刚回复了他的帖子。不幸的是,它打开了我这边所有的.pdf文件。@Luis:它们是如何提供的?当我们流回PDF时,我们会更改响应信息标题。小提琴可以工作,但在我这方面,它仍然会同时打开所有的.PDF文件。谢谢@Luis所有的.pdfs
链接都是一次性的吗?确保script
标记位于
之前,并且
位于脚本
之前