【问题标题】:Changing the page of an embeded .pdf using a link使用链接更改嵌入式 .pdf 的页面
【发布时间】:2018-01-03 19:53:30
【问题描述】:

我可以在 src 之后使用“#page=[pageNumber]”来确保 pdf 打开到相应的页面,但我不明白如何使用变量代替 [pageNumber] 并在何时更改变量按下了一个标签/按钮。

【问题讨论】:

    标签: javascript html pdf hyperlink


    【解决方案1】:

    我建议使用document.getElementsByTagName('a') 循环遍历每个链接,并将点击处理程序附加到每个链接。然后,您可以通过将hrefthis.href.split("=")[1] 拆分来定位点击链接的目标。

    在以下示例中,我将this.href.split("=")[1] 分配给变量clicked,您可以在想知道被点击的最后链接时引用它。

    var clicked;
    var links = document.getElementsByTagName('a');
    for (var i = 0; i < links.length; i++) {
      links[i].onclick = function(e) {
        e.preventDefault();
        clicked = this.href.split("=")[1];
        console.log("You clicked link: " + clicked);
      }
    }
    <a href="?page=1">Page 1</a>
    <a href="?page=2">Page 2</a>
    <a href="?page=3">Page 3</a>

    请注意,上面的示例使用e.preventDefault(); 来防止点击操作实际执行。只需删除该行以允许点击在您的实际代码中打开相关页面; clicked 变量仍会更新。

    希望这会有所帮助! :)

    【讨论】:

    • 为什么是il 而不是i &lt; links.length
    • @Bright -- 好问题。老实说,我从一个示例中复制了通用的 JavaScript for 循环以节省写出来的时间,而实际上没有仔细检查它。虽然上述方法仍然以相同的方式工作,但你是对的,它可以被优化。很好的发现,我现在会更新:)
    • 这是我用来将 pdf 嵌入我的页面的方法。使用您提供的内容似乎会在 url 中传递变量时重新加载页面。但是如何修改 pdf 的嵌入式 src?谢谢。
    猜你喜欢
    • 2014-11-26
    • 2011-01-20
    • 2014-02-15
    • 2021-12-21
    • 2013-11-23
    • 1970-01-01
    • 2023-04-02
    • 1970-01-01
    • 2013-12-26
    相关资源
    最近更新 更多