jquery代码用于窗口的内联onclick代码,打开

时间:2013-10-03 23:19:22

标签: javascript jquery html css

我正在努力解决这个问题一段时间,并希望让专家帮助我。

背景是:

window.open blocked by default (popups blocked)

我在这个问题的评论1中得到了答案,小提琴如下所示

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

这可能是答案,但我没理解:

这不能仅仅在jQuery中完成吗?我正在谈论以下代码:

   $('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代码中创建的?????

1 个答案:

答案 0 :(得分: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