javascript window.open无法在IE中运行

时间:2012-11-08 09:35:33

标签: php javascript jquery cakephp-2.0

我希望链接在新窗口中打开但是当我在IE中单击write_review时它会在新选项卡中打开。 我检查了导致问题的参数中的空格。但没问题。

我已检查过网址: - Javascript window.open is blocked by IE popup blocker

但它不适合我......

这是我在另一个浏览器中的工作代码。

    // Opening pop-up window for the write review
    jQuery('a#write_review').click(function() {
        var w = 1000;
        var h = 650;
        var left = (screen.width/2)-(w/2);
        var top = (screen.height/2)-(h/2);
        var planid=$(this).parent().parent().find('input[name="data[PlanIdsel]"]').val();
        var providerid=$(this).parent().parent().find('input[name="data[ProviderIdsel]"]').val();
        var rep=$(this).parent().parent().find('input[name="data[Repsel]"]').val();
        var url = "<?php echo $this->webroot ?>"+"enrollments/write_rating/"+planid+"?Rep="+rep+"&providerId="+providerid;
        window.open(url, 'subWind', 'status, scrollbars, resizable, dependent, width='+w+', height='+h+', left='+left+', top='+top);
    });

请指导我或纠正我..

2 个答案:

答案 0 :(得分:4)

检查this如何让window.open在Internet Explorer 7中工作?

这是IE6中进行的安全性更改的一部分。现在,您只能在用户启动的事件中调用“window.open”。例如,您的代码将在元素的onclick事件中起作用。 “window.open”MSDN页面说明了这个

link

答案 1 :(得分:3)

$(document).ready(function(){
  $("a#ID of your link").click(function(){
    var w = 1000;
    var h = 650;
    var left = (screen.width/2)-(w/2);
    var top = (screen.height/2)-(h/2);
    var url = "your url";
    window.open(url, 'subWind', 'status, scrollbars, resizable, dependent, width='+w+', height='+h+', left='+left+', top='+top);
  });
});

这应该有效。