2

我正在尝试使用 jQuery 更改数据 URL。目前我的代码看起来像这样。

<div id="twitterButton" title="Tweet it on Twitter"><a href="https://twitter.com/share" id="tweet" class="twitter-share-button" data-url="" data-related="jasoncosta" data-lang="en" data-size="large" data-count="none">Tweet</a></div>

<script type="text/javascript">
$(document).ready(function () {
    $('#twitterButton').click(function () {
        $('#tweet').attr("data-url", "https://www.google.com/");
    });
});</script>

如您所见,我将 url-data 留空,因此我可以确定它只是在 jQuery 中设置。但是,每当我单击推文按钮时,它总是会打开带有当前页面链接的窗口。有人可以解释我如何通过 jQuery 或 javascript 将其设置为其他内容吗?

4

2 回答 2

4

您应该.data()用于控制数据属性。正如 Daniele 在该答案中所说,您还必须a使用preventDefault().

$('#twitterButton').click(function (e) {
    $('#tweet').data('url',"https://www.google.com");
    e.preventDefault();
});
于 2013-07-09T13:18:39.733 回答
3

您必须调用preventDefault()方法来停止在子元素a上传播 click 事件:

试试这个代码:

$('#twitterButton').click(function (e) {
    $('#tweet').attr("data-url", "https://www.google.com/");
    e.preventDefault();
});

好代码

D.

于 2013-07-09T13:33:27.233 回答