【问题标题】:how prevent IE to block Popups for bookmarklet same as pinterest如何防止 IE 阻止与 pinterest 相同的书签弹出窗口
【发布时间】:2013-10-24 12:36:37
【问题描述】:

最好的同事,

我为 IE 创建了一个书签,但遇到了以下问题。当用户在书签工具栏中拖动我的书签并单击它时,如果用户想要允许弹出窗口,IE 会显示一个对话框。但是 Pinterest 可以避免这种情况,有人可以告诉我 pinterest 如何找到解决该问题的方法吗?

我的外部 js 文件看起来像:

function Bookmarker(){
    initialize();
}

function initialize(){
    var url = document.location.href;
    loadBookMarkLet(url);
}


function loadBookMarkLet(url) {


    newwindow = window.open('http://bookmarker.symbaloo.com/?url='+encodeURIComponent(url),'Bookmarklet','toolbar=no,width=550,height=330,left=500,top=200, status=no,scrollbars=no,resize=no');
    setTimeout(function() {
        newwindow.focus();
    }, 0);

}

new Bookmarker();

我的 index.html 文件看起来像:

<a href="javascript:(function(){script=document.createElement('SCRIPT');script.type='text/javascript';script.src='http://navidmirzaie.com/bookmarklet/default.js?x='+(Math.random());document.getElementsByTagName('head')[0].appendChild(script);})();" icon="bookmarker_icon.ico">Symbaloo Bookmarklet</a>

我将不胜感激。

Tnx 高级。

【问题讨论】:

    标签: internet-explorer bookmarklet popupwindow popup-blocker


    【解决方案1】:

    这个问题一般有两种处理方式。

    1.) 不要使用窗口,而是在页面中创建一个 div。 div 可以选择包含 iframe。

    2.) 在大多数浏览器中,如果操作直接来自用户发起的操作,则可以在没有警告的情况下打开一个窗口。

    如果小书签先附加一个脚本文件,然后脚本文件中的代码打开窗口,这不是直接的。

    但是,如果小书签代码本身打开了窗口,这是直接的。这会起作用。

    混合解决方案可能是让小书签打开窗口,然后附加一个脚本文件。然后附加脚本文件中的代码可以使用已经打开的窗口。

    如果您的示例代码与您真正想要使用的代码接近,我会直接在书签中使用它并跳过附加外部文件的步骤。

    【讨论】:

    • 非常感谢,我试试看:)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-06-03
    • 1970-01-01
    • 2020-05-04
    • 1970-01-01
    • 2015-03-03
    相关资源
    最近更新 更多