Javascript-форум (https://javascript.ru/forum/)
-   Events/DOM/Window (https://javascript.ru/forum/events/)
-   -   Как вставить событие внутрь document.write (https://javascript.ru/forum/events/1299-kak-vstavit-sobytie-vnutr-document-write.html)

Vivasvan 11.06.2008 22:39

Как вставить событие внутрь document.write
 
Здравствуйте! Вопрос - как вставить событие onClick внутрь document.write, чтобы оно срабатывало? Привожу поясняющий код:

<div id="xyz" align="center">
<SCRIPT LANGUAGE="JavaScript" TYPE="text/javascript">
 var ua = navigator.userAgent.toLowerCase(); 
 isOpera = (ua.indexOf("opera") != -1); 
 if(isOpera){
 document.write("<a href='rus.html'><img src='/img/rus.jpg' alt='русская версия' width='41' height='32' border='0' /></a>");
 }
 else{
 document.write("<a href='#' onClick='JavaScript:popUpWindow('rus.html', 0, 0)'><img src='/img/rus.jpg' alt='русская версия'  width='41' height='32' border='0' /></a>");
 }
</SCRIPT>

</div>


Смысл скрипта в том, чтобы новое окно открылось в том же окне, если браузер Opera.

Kolyaj 11.06.2008 22:50

Vivasvan, в аттрибуте onClick не нужно указывать javascript:. А вообще, можно просто добавить аттрибут target="_blank", тогда ссылка будет открываться в новом окне.

Vivasvan 12.06.2008 00:31

Цитата:

Сообщение от Kolyaj (Сообщение 3038)
Vivasvan, в аттрибуте onClick не нужно указывать javascript:. А вообще, можно просто добавить аттрибут target="_blank", тогда ссылка будет открываться в новом окне.

Нет, не помогло. target="_blank" мне не поможет, надо чтобы без всякого там интерфейса лишнего окно открывалось и на весь экран.

Kolyaj 12.06.2008 00:57

А функция popUpWindow где?

Vivasvan 12.06.2008 20:35

Цитата:

Сообщение от Kolyaj (Сообщение 3041)
А функция popUpWindow где?

Функция описана внутри тега HEAD.

Андрей Параничев 12.06.2008 21:26

Протокол javascript: внутри onClick указывать не надо. Кроме того, следите за кавычками - в выражении внутри onClick есть одинарные кавычки, которыми он окружен.
document.write("<a href='#' onClick='popUpWindow(\'rus.html\', 0, 0)'><img src='/img/rus.jpg' alt='русская версия'  width='41' height='32' border='0' /></a>");

Vivasvan 13.06.2008 00:45

Цитата:

Сообщение от Андрей Параничев (Сообщение 3051)
Протокол javascript: внутри onClick указывать не надо. Кроме того, следите за кавычками - в выражении внутри onClick есть одинарные кавычки, которыми он окружен.
document.write("<a href='#' onClick='popUpWindow(\'rus.html\', 0, 0)'><img src='/img/rus.jpg' alt='русская версия'  width='41' height='32' border='0' /></a>");

К сожалению, не работает - www.sergey-larionov.brateclis.com

P.S. Да, забыл сказать, что в Opera этот скрипт работает и работал даже без дополнителных "\". Забавно получается в том смысле, что ради Оперы все это делалось - в Опере заработало, а в других браузерах перестало.

Андрей Параничев 13.06.2008 01:31

Vivasvan,
А так если?
document.write("<a href='#' onClick='popUpWindow(\"rus.html\", 0, 0)'><img src='/img/rus.jpg' alt='русская версия'  width='41' height='32' border='0' /></a>")

В любом случае, ошибка во вложенности кавычек.

Vivasvan 13.06.2008 20:02

Цитата:

Сообщение от Андрей Параничев (Сообщение 3066)
Vivasvan,
А так если?
document.write("<a href='#' onClick='popUpWindow(\"rus.html\", 0, 0)'><img src='/img/rus.jpg' alt='русская версия'  width='41' height='32' border='0' /></a>")

В любом случае, ошибка во вложенности кавычек.

Андрей, спасибо большое, сработало!


Часовой пояс GMT +3, время: 04:51.