Как вставить событие внутрь 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. |
Vivasvan, в аттрибуте onClick не нужно указывать javascript:. А вообще, можно просто добавить аттрибут target="_blank", тогда ссылка будет открываться в новом окне.
|
Цитата:
|
А функция popUpWindow где?
|
Цитата:
|
Протокол 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>"); |
Цитата:
P.S. Да, забыл сказать, что в Opera этот скрипт работает и работал даже без дополнителных "\". Забавно получается в том смысле, что ради Оперы все это делалось - в Опере заработало, а в других браузерах перестало. |
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. |