如何在javascript中创建指向pdf的链接

How do I create a link to a pdf in javascript?

本文关键字:pdf 链接 创建 javascript      更新时间:2023-09-26

我是一个使用XHTML模板创建电子商务网站的新手。我想在某些项目下添加免责声明,但不是全部。为了避免在每个项目下键入免责声明(并避免将来在免责声明更改时出现问题),我想使用 javascript 创建一个副本块,当我指向它时,会添加免责声明。我已经成功地做到了(是的!),但是,在免责声明中有一个指向pdf的链接。当我使用 html 链接到 pdf 时,它失败了。我知道这可能是因为我没有正确的语法,因为 html 在 javascript 代码的"内部"。有人可以帮忙吗?

这是我所拥有的:

//<![CDATA[
function openPDF(file)
{
window.open (file, 'resizable,scrollbars');
}
//]]>
</script>
<script type="text/javascript">
//<![CDATA[
onload=function()
{
var txt=document.getElementById("myDiv")
txt.innerHTML="Photos do not represent actual size. Refer to measurements for sizing.
Measurements are approximate. Colors shown may differ depending on your computer
settings. Colors described are subjective and colors may vary from piece to piece,
depending on the natural properties of the stones. To learn more, see our <a href="#" 
onClick="openPDF('www.shop.site.com/media/JewelryGuide.pdf')">Jewelry Guide</a>.";
}
//]]>
</script>

这是我用来调用它的代码:

<div id="myDiv"></div>`

嗨,像下面这样的函数可以完成我相信的工作。.

function openPdf(e, path) {
    // stop the browser from going to the href
    e = e || window.event; // for IE
    e.preventDefault(); 
    // launch a new window with your PDF
    window.open(path, 'somename', ... /* options */);
}

嗨,我做了一个小提琴,希望它有帮助...http://jsbin.com/aQUFota/1/edit

1)该文本字符串中有换行符。2)你需要转义几个引号。我选择交换引号并转义文件名周围的引号。

txt.innerHTML = 'Photos do not represent actual size. Refer to measurements for sizing. Measurements are approximate. Colors shown may differ depending on your computer settings. Colors described are subjective and colors may vary from piece to piece, depending on the natural properties of the stones. To learn more, see our <a href="#" onClick="openPDF(''www.shop.site.com/media/JewelryGuide.pdf'')">Jewelry Guide</a>.';

如果你不想要一长行,你可以像这样分解这些行:

txt.innerHTML = 'Photos do not represent actual size.' +
'Refer to measurements for sizing. Measurements are approximate.' +
'Colors shown may differ depending on your computer settings.' +

等。

甚至:

txt.innerHTML = [
  'Photos do not represent actual size.',
  'Refer to measurements for sizing. Measurements are approximate.',
  'Colors shown may differ depending on your computer settings.'
].join('');