0

我已经看了好几天了,完全被卡住了。我正在使用的页面如下所示:

<div class="field--item">
<span class="file file--mime-application-pdf file--application-pdf icon-before">
<div class="file-info text-center--mobile"><span class="file-icon"><span class="icon glyphicon glyphicon-file text-primary" aria-hidden="true"></span></span><div class="file-wrapper"><span class="file-name">17840.pdf</span><span class="file-size">94.35 KB</span></div></div>
<span class="file-link"><a href="/dashboard/download/17840/122526" class="resource-button" resource-name="Kennedy's actions in Vietnam in 1962" resource-file-id="122526" resource-file-type="PDF" resource-subject="History" resource-category="">Download</a>
</span></span></div>

我设置的自定义变量如下所示:

function() {
    return document.getElementsByClassName('resource-button')[0].getAttribute('resource-name').text();
}

我真正想做的是设置一个变量,当单击“下载”按钮时,该变量会提取资源名称。我知道要单独设置实际的点击跟踪等,我只是无法让这个函数将任何东西拉到“定义”之外的变量中。

非常感谢任何帮助或对正确方向的点头。谢谢!

4

2 回答 2

0

尝试在最后删除该text()功能:

function getAttribute() {
  return document.getElementsByClassName('resource-button')[0].getAttribute('resource-name');
}

console.log(getAttribute());
<div class="field--item">
<span class="file file--mime-application-pdf file--application-pdf icon-before">
<div class="file-info text-center--mobile"><span class="file-icon"><span class="icon glyphicon glyphicon-file text-primary" aria-hidden="true"></span></span><div class="file-wrapper"><span class="file-name">17840.pdf</span><span class="file-size">94.35 KB</span></div></div>
<span class="file-link"><a href="/dashboard/download/17840/122526" class="resource-button" resource-name="Kennedy's actions in Vietnam in 1962" resource-file-id="122526" resource-file-type="PDF" resource-subject="History" resource-category="">Download</a>
</span></span></div>

于 2021-04-23T03:46:39.907 回答
0

也许您可以使用点击事件:

<a href="/dashboard/download/17840/122526" onclick="myFunction(this);">Download</a>

<script>
    function myFunction(elem) {
       var yourAttribute = elem.getAttribute('yourAttribute');
    }
</script>
于 2021-04-23T02:49:10.923 回答