澄清:
我的回复声明如下:
$striptitle .= ' - <a onclick="getnewurl();" href="'.SGLink::album($aid). '">'. $namek .'</a></h1>
<a href="https://twitter.com/share" class="twitter-share-button" data-lang="en" data-via="jb_thehot" data-text="Pictures of '. $hashfinal .'" teens>Tweet</a>
<script>!function(d,s,id){var js,fjs=d.getElementsByTagName(s)[0];if(!d.getElementById(id)){js=d.createElement(s);js.id=id;js.src="//platform.twitter.com/widgets.js";fjs.parentNode.insertBefore(js,fjs);}}(document,"script","twitter-wjs");</script>';
echo $striptitle ;
onclick执行此操作:
<script type="text/javascript">
function getnewurl()
{
var url = document.URL;
alert( url );
}
</script>
我需要的是基本上添加我的锚标签data-url =“INSERT_VAR_URL_HERE”
这可能吗?
如果这还不够明确,请告诉我 谢谢!
编辑:澄清一下,该功能中的警报仅用于测试。我需要的是能够在同一$ striptitle变量中使用函数中获得的变量。
我的问题是网址随AJAX而变化,并且twitter按钮的data-url没有更新。我希望能够通过点击每次获取新网址来获取新网址。如果有其他方法可以做到这一点,我愿意接受建议!
答案 0 :(得分:0)
为什么不将它作为参数传递?
$striptitle .= " - <a onclick=\"getnewurl('URL-HERE');\"...>";
然后在你的剧本中:
<script>
function getnewurl(url) {
alert(url);
}
</script>
答案 1 :(得分:0)
基于@Kolink的回答,一种方法是不在两个地方重复网址,你可以生成以下链接:
<a onclick="getnewurl(this);" href="...">
然后你的JS看起来像:
function getnewurl(link) {
link.setAttribute('data-url', location.href);
}
编辑显然jQuery.data
没有正确更新dom,但是setAttribute没有