我有以下简单页面:
<body>
<a id='aa' href="https://www.facebook.com/sharer/sharer.php?app_id=370785493758664&sdk=joey&u=https://citizengo.org/&display=popup&ref=plugin&src=share_button" onclick="return !window.open(this.href, 'Facebook', 'width=640,height=580')">SHARE PAGE</a>
</body>
<script>
document.getElementById('aa').click();
</script>
但是,在加载时,链接是在同一窗口中打开的,但是如果我注释document.getElementById('aa').click();
并从开发工具的控制台中调用它,它将显示漂亮的弹出窗口!为什么?
我想在页面加载时触发弹出窗口。我尝试了其他选项,但是所有这些选项均导致浏览器“弹出窗口被阻止”,当然我也不想让用户添加例外...
答案 0 :(得分:0)
我尝试了其他选项,但是所有这些选项都导致浏览器“弹出窗口被阻止”
如果您尝试自动触发弹出窗口且没有适当的用户交互,浏览器将始终阻止该弹出窗口。
尝试将target="_blank"
添加到链接,然后查看它是否打开新的窗口/标签。 (然后,您将无法指定任何尺寸。)
如果该内容也被弹出窗口阻止程序捕获-那么没有其他方法。
不问用户就将此对话框敲入用户的脸,似乎有点激进/令人讨厌-确定您的访问者实际上会喜欢吗?
此外,从长远来看,当您将其强加给人们时,Facebook可能也不喜欢它。他们可能会得出结论,您试图强迫用户共享,或者给人一种印象,即共享是使用您网站其余部分的必要条件……因此,如果Facebook有一天阻止您的域,请不要感到惊讶。