2013-10-03 27 views
-1

我一直在努力争取一段时间,希望能得到专家的帮助。jquery代码内联onlick代码的窗口,打开

语境是:

window.open blocked by default (popups blocked)

我在这个问题在注释1配备有答案的小提琴是如下

http://jsfiddle.net/chokchai/EgBQK/

这可能是答案,但我不明白这一点:

这不能纯粹在jQuery中完成吗?我说ABT下面的代码:

$('body').append('<div><a href="#" onclick="window.open(\'https://www.facebook.com/sharer/sharer.php?u=\'+encodeURIComponent(\''+val+'\'), \'facebook-share-dialog\', \'width=626,height=436\'); return false;"> Share on Facebook </a></div>'); 

我怎么能这个代码转换为纯jQuery的? 在上面的代码中,html代码是在jquery代码中创建的吗?

+0

如果你没有思想的javascript jquery的,那么就没有纯粹的jQuery .. :) – PSL

+0

没有我的意思的jQuery/JavaScript的...我的意思是HTML代码是在jQuery/js代码中创建的......这对我来说是一个问题。 – GJain

回答

1

试试这个方法:

var url = ['http://google.com', 'http://bing.com', 'http://duckduckgo.com/'], 
    $coll; 

$coll = $.map(url, function (val) { 
    return $('<div/>').append($('<a/>', { 
     href: '#', 
     rel: val, 
     text: 'Share on Facebook' 
    }).click(handleClick)); 
}); 
$('body').append($coll); 

function handleClick(e) { 
    e.preventDefault(); 
    window.open('https://www.facebook.com/sharer/sharer.php?u=' + encodeURIComponent(this.rel), 'facebook-share-dialog', 'width=626,height=436'); 
} 

Demo

+0

这看起来可能是我正在寻找的.....让我试试这个 – GJain

+0

我可以在TIME后面更改“rel”....我可能没有预先安装URL数组......它随着时间的推移而变化基于事件....一个事件,我想为相对difffern价值....我需要尝试...非常感谢 – GJain

+1

@ user2384694是的,你可以随时更改它,当你需要它的变化。 – PSL

相关问题