Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/fortran/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 更改Tweet按钮的href?_Javascript_Twitter - Fatal编程技术网

Javascript 更改Tweet按钮的href?

Javascript 更改Tweet按钮的href?,javascript,twitter,Javascript,Twitter,我试图在网站上放置一个推特按钮;tweet将预先填充文本,这些文本会根据div中的文本而变化(用户可以更改)。正常的href值为,但由于我需要根据特定条件更改预填充的文本,因此我尝试添加onClick函数。现在,我只是尝试将href改为“…text=“+”此处的任何文本”,以查看是否有效,但将来,我需要将其改为“…text=“+someVariable” 我对这个很陌生;有人能解释为什么这不起作用吗?这里有一个链接到 HTML: getElementsByClassName(与名称一样)返回元素

我试图在网站上放置一个推特按钮;tweet将预先填充文本,这些文本会根据div中的文本而变化(用户可以更改)。正常的href值为,但由于我需要根据特定条件更改预填充的文本,因此我尝试添加onClick函数。现在,我只是尝试将href改为“…text=“+”此处的任何文本”,以查看是否有效,但将来,我需要将其改为“…text=“+someVariable”

我对这个很陌生;有人能解释为什么这不起作用吗?这里有一个链接到

HTML:


getElementsByClassName
(与名称一样)返回
元素
(复数,非单数)

您需要逐个检查它们,并设置href属性:

function tweetContent() {
    var anchorElements = document.getElementsByClassName("twitter-share-button")
    Array.prototype.forEach.call(anchorElements, function(e) {
        e.href="https://twitter.com/intent/tweet?text=" + "quote";
    })
}
以下是一个工作示例:

函数tweetContent(){
var anchoreElements=document.getElementsByClassName(“twitter共享按钮”)
Array.prototype.forEach.call(锚元素,函数(e){
e、 href=”https://twitter.com/intent/tweet?text=“+”引用“;
})
}
tweetContent()


感谢您的回复!更改了我的代码,但不幸的是仍然不起作用。我添加了你的代码,但当我单击codepen()中的tweet按钮时没有任何更改,没有预填充的文本。代码是有意义的,代码片段是有效的;这是我从Twitter中提取的按钮所特有的吗?也就是说,widgets.js中有一些底层内容告诉按钮该做什么?您提供的代码笔中的javascript不是这个特定问题中的javascript。根据你的问题,我的答案给出了确切的答案,所以请接受这个答案。
function tweetContent() {
    document.getElementsByClassName("twitter-share-button").href="https://twitter.com/intent/tweet?text=" + "quote";
}
function tweetContent() {
    var anchorElements = document.getElementsByClassName("twitter-share-button")
    Array.prototype.forEach.call(anchorElements, function(e) {
        e.href="https://twitter.com/intent/tweet?text=" + "quote";
    })
}