我正在尝试创建一个 reddit 共享按钮,但在使用变量定义窗口的位置时遇到问题。例如,这会在 reddit 上打开一个共享窗口,但它不会预填充 url 字段(导致我相信 url 参数未正确传递):
<a href="//www.reddit.com/submit" onclick="shareOnReddit()">
<img src="//www.redditstatic.com/spreddit7.gif" alt="submit to reddit" border="0"/> </a>
<script>
function shareOnReddit() {
var url = encodeURIComponent(window.location);
alert(url);
// shows correct url
window.location = '//www.reddit.com/submit?url=' + url;
return false;
}
</script>
但由于某种原因,这(取自 reddit's documentation )确实打开了一个带有预填充 URL 字段的 Reddit 共享页面:
<a href="//www.reddit.com/submit"
onclick="window.location = '//www.reddit.com/submit?url=' + encodeURIComponent(window.location); return false"> <img
src="//www.redditstatic.com/spreddit7.gif" alt="submit to reddit" border="0"/> </a>
最佳答案
清理代码后,它看起来像这样:
<a onclick="shareOnReddit()">
<img src="https://www.redditstatic.com/spreddit7.gif" alt="submit to reddit" border="0" />
</a>
<script>
function shareOnReddit() {
var url = encodeURIComponent(window.location);
window.location = '//www.reddit.com/submit?url=' + url;
return false;
}
</script>
我建议删除 href="LINK"标签,因为该事件是通过 onClick="EVENT"触发的
关于javascript - 在 window.location 中使用 JS 变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50401015/