Подтвердить что ты не робот

Window.open не работает в IE8?

Это JavaScript, который я использую в настоящее время:

window.open('/modules/mod_oneononechat/chatwindow.php?key='+key+'&color=blue','x'+winName+'x','location=0,status=0,toolbar=0,menubar=0,resizable=0,scrollbars=0,height=375,width=420');

В IE8 это не работает. Это окно чата, которое отлично работает во всех других браузерах (включая IE7). Любые идеи относительно того, почему он не работает на IE8?

4b9b3361

Ответ 1

IE8 не любит пробелы в имени окна.

Ответ 2

Удаление пространства из имени окна решило проблему.

Ответ 3

В IE8 функция внизу не открывала новое окно, тогда как оно отлично работало в Mozilla и Chrome.

function openReports(reportUrl){
   window.open(reportUrl,'Report Information','height=800,width=1000,left=200,top=200,toolbars=no,resizable=no,scrollbars=auto,location=no');
}

Удаление пространства (Report Information) из имени окна также решило проблему для меня.

Ответ 4

Это работает для меня:

javascript:window.open('http://google.com', 'x'+'winName'+'x', 'location=0', 'status=0', 'toolbar=0', 'menubar=0', 'resizable=0', 'scrollbars=0', 'height=375', 'width=420');

Ответ 5

У меня тоже была проблема с этой проблемой. Я написал такую ​​функцию, как

function newPopup(url) {
      popupWindow=window.open(url,'Detailed Informations','height=700,width=1000,left=10,top=10,resizable=yes,scrollbars=yes,toolbar=yes,menubar=no,location=no,directories=no,status=yes')
}

где в имени окна было указано пробел i.e "Подробная информация", и из-за этого всплывающее окно не работало. Просто не помещайте пробелы в имя окна.

Ответ 6

window.open имеет три параметра: url, windowname, otherfeatures.

Для FF, если второй параметр (windowname) не передан, он все еще работает:)

Но в IE 7,8, который мы тестировали, мы должны передать второй параметр

Ответ 7

var newWin = window.open('', '', 'width=400, height=400, top=100, left=100');

В IE8 Использование. Эти первые два аргумента должны быть пустыми, а затем работают на IE8.

Ответ 9

статья поддержки Q281679 от Microsoft была выпущена для MSIE 5.5/6.0. Но это может быть применимо для MSIE 8.

В качестве альтернативы вы можете использовать метатег или заголовок совместимого с X-UA и посмотреть, можно ли это решить, прибегнув к (я лично использовал бы это как последнее средство и вместо этого попытался бы написать JavaScript, который не заставляет IE8 вести себя так, как описано).

PS: Чтобы избежать необходимости использования режима совместимости с IE8, используйте службы W3C page validator и проверите страницу в другом совместимый со стандартами браузер, например Firefox 3 (не забудьте использовать расширения Firebug и расширения веб-разработки, если вы используете FF3).

Ответ 10

Если вы используете пробелы или тире в имени окна, IE не будет работать (по крайней мере, некоторые версии, которые я использовал).

Ответ 11

В IE, если вы откроете одно окно с помощью window.open() - снова, если вы хотите открыть новое окно с помощью window.open(), он не откроет новое окно.

Для этого решения - IN Window.open параметры передают этот параметр "copyhistory=no".

например:

WindowName = window.open('','Name','height=320,width=428,toolbar=no, 
     menubar=no,scrollbars=no, resizable=no,location=no, directories=no,    
     status=no,copyhistory=no');

Надеюсь, это будет полезно для вас.