Подключение внешних скриптов к динамически создаваемому окну
Здравствуйте! Второй день голову ломаю, уверен, что ошибка в какой-то мелочи, которую не могу заметить.
Прошу вашей помощи. Имеется календарик (tigracalendar), подключается из "tcal.js", в статике все работает, а как создаю динамическую страницу ничего не работает. Доходит до объявления скрипта и все дальше страничка не подгружается, стоит добавить алерт сразу после объявления источника калдендарика и все норм. ... win = window.open("", "", "toolbar=0,width=800,height=450"); win.document.open(); win.document.writeln('<!DOCTYPE HTML>'); win.document.writeln('<html><head>'); win.document.writeln('<meta http-equiv="content-type" content="text/html; charset=windows-1251">'); win.document.writeln('<link rel="stylesheet" type="text/css" href="http://ххх/cgi-bin/src/u/tcal.css"/>'); win.document.writeln('<script type="text/javascript" src="http://ххх/cgi-bin/src/u/tcal.js"><\x2fscript>'); win.alert(); win.document.writeln('<title>Проверка отчета</title></head><body>'); ... Что я не замечаю?:-? В tcal.js кавычки используются одинарные, мне казалось, что проблема с кавычками, или с тем, что нужно подождать, пока подгрузится скритп из источника. Спасибо. |
Цитата:
<!DOCTYPE html> <html> <head> <!-- <script src="http://code.jquery.com/jquery-latest.js"></script> <link rel="stylesheet" type="text/css" href="tmp.css" /> --> <style type="text/css"> </style> <script type="text/javascript"> win = window.open("", "", "toolbar=0,width=800,height=450"); win.document.open(); win.document.writeln('<!DOCTYPE HTML'+'>'); win.document.writeln('<html><head'+'>'); win.document.writeln('<script src="http://code.jquery.com/jquery-latest.js"></script'+'>'); win.document.writeln('<title>Проверка отчета</title'+'>'); win.document.writeln('</head'+'>'); win.document.writeln('<body'+'>'); win.document.writeln('<button id="b" onclick="$(\'#b\').css(\'color\',\'red\')">Test</button'+'>'); win.document.writeln('</body'+'>'); </script> </head> <body> </body> </html> Вроде работает... |
Цитата:
<html> <head></head> <body></body> </html> И доктайп уже вписывать поздно. ksa, разве нет? |
Цитата:
|
Техническая мысль прогресса меня подтолкнула проверить это в других браузерах (Изначально проверка в виндовой последней Опере ).
Хром отлично переваривает и все работает. IE6 загибается и буксует - пишет загрузка данных с http://ххх/cgi-bin/src/u/tcal.css Чего ж им не нравится? Стоит к примеру ksa прикрутить вызов окна по кнопке, как сразу все не работает :( Почему опера нелюбит, когда этот код помещен в функцию? <!DOCTYPE html> <html> <head> <!-- <script src="http://code.jquery.com/jquery-latest.js"></script> <link rel="stylesheet" type="text/css" href="tmp.css" /> --> <style type="text/css"> </style> </head><body> <script type="text/javascript"> function s(){ win = window.open("", "", "toolbar=0,width=800,height=450"); win.document.open(); win.document.writeln('<!DOCTYPE HTML'+'>'); win.document.writeln('<html><head'+'>'); win.document.writeln('<script src="http://code.jquery.com/jquery-latest.js"></script'+'>'); win.document.writeln('<title>Проверка отчета</title'+'>'); win.document.writeln('</head'+'>'); win.document.writeln('<body'+'>'); win.document.writeln('<button id="b" onclick="$(\'#b\').css(\'color\',\'red\')">Test</button'+'>'); win.document.writeln('</body'+'>'); }; </script> <input type="button" onclick= s()> </body> </html> |
Цитата:
var doc = win.document, script = doc.createElement('script'); script.src = 'http://code.jquery.com/jquery-latest.js'; doc.body.appendChild(script); doc.title = 'Проверка отчета'; doc.body.innerHTML = '<button id="b" onclick="$(\'#b\').css(\'color\',\'red\')">Test</button'+'>'; Может так? |
Цитата:
Но проблема остается :( все равно опера не прожевывает :( |
Цитата:
|
В общем, я так этот вопрос и не решил. У меня мой пример в Опере работает только, если перед загрузкой странички новое окошко выдаст алерт, в Хроме все ок и без алерта.
|
<script type="text/javascript"> function MyOpen(str){ var msg = new String(""); msg = "<head><meta http-equiv=\"Content-Type\" content=\"text/html; charset=windows-1251\" /><link rel=\"stylesheet\" type=\"text/css\" href=\"http://javascript.ru/forum/clientscript/vbulletin_css/style-81884d78-00003.css\" /><title>Тest</title> <script src=\"http://code.jquery.com/jquery-latest.js\"><"+"/"+"script>" msg+="<div class='panel' style='margin-top:45px;color:red;font-size:32px;'><center>"+str+"</center></div>" msg+="<script>setTimeout(\"$('div').text('Меняем содержимое элемента с помощью jQuery,- Скрипты работают')\",2000);<"+"/"+"script>" msg+="</body></html>"; popup = window.open("", "", "height=300, width=700, top=300, left=300, scrollbars=1") popup.document.write(msg) popup.document.close() return false } </script> <button onclick="MyOpen('Привет')">Жмём</button> |
Часовой пояс GMT +3, время: 02:32. |