在使用window.open时,我正试图找出如何绕过pop阻塞问题。这是我正在处理的代码。
我构建的第一个脚本使用bit.ly API缩短URL地址。基本上,它获取参数,然后将其传递给API。
然后,第二个脚本调用get_short_url函数,以便通过twitter使用on-click事件共享bit.ly url。不幸的是,浏览器似乎将window.open标记为弹出。有没有办法绕过这个
<script>
var base_url = window.location.origin,
hash_bang = "/#/sign-up?referral=",
login = "login",
api_key = "api_key";
function get_short_url(login, api_key, func, value) {
var value = document.getElementById('input-refcode').value;
$.getJSON(
"https://api-ssl.bitly.com//v3/shorten?callback=?",
{
"format": "json",
"apiKey": api_key,
"login": login,
"longUrl": base_url + hash_bang + value
},
function(response)
{
func(response.data.url);
}
);
}
</script><script>
$('#twitter').on('click', function() {
get_short_url(login, api_key, function(short_url) {
win = window.open('https://twitter.com/intent/tweet?text=Get Free Rides at Electric Studio! Sign up ' + short_url + ' to purchase your first timer package! After your first ride, you get 1 ride on us!' + ' https://www.electricstudio.ph/', '_blank');
win.focus();
});
});
</script>发布于 2017-06-06 04:57:43
我已经在火狐浏览器、Chrome浏览器和互联网浏览器上工作了。
var url = 'https://twitter.com/intent/tweet?text='+encodeURIComponent('Get Free Rides at Electric Studio! Sign up xx to purchase your first timer package! After your first ride, you get 1 ride on us! https://www.electricstudio.ph/');
console.log(url);
var win = window.open(url, '_blank');
win.focus();
发布于 2017-06-06 08:00:12
我不认为您可以绕过弹出警报,因为它是浏览器处理的安全。对于您的个人计算机,您可以更改安全设置以将此站点标记为异常,然后将不再提示您。
对于希望从on ajax调用传递值到另一部分的第二部分,可以创建如下所示的对象并将其作为响应传递。
function(response)
{
func({'shortURL' : response.data.url, 'yourValue': customValue });
}并在您的另一个函数中访问它,如
get_short_url(login, api_key, function(result) {
var custVal = result.customValue; //Your custom value
win = window.open('https://twitter.com/intent/tweet?text=Get Free Rides at Electric Studio! Sign up ' + result.shortURL + ' to purchase your first timer package! After your first ride, you get 1 ride on us!' + ' https://www.electricstudio.ph/', '_blank');
win.focus();
});https://stackoverflow.com/questions/44381377
复制相似问题