Локальное изменение document.write
#jQuery
Появилась необходимость заменить write на append, т.к. при любых моих попытках изменить код янндекс директа, он просто перестает работать, решил заменить document.write на append в лоб. Но возникла задача: как вернуть document.write его предыдущее значение, после срабатывания в функции inID, чтобы в других частях кода write работал как прежде. P.S. Если не менять write на append, при использовании document ready, возникает ошибка: вся страница заменяется на тот код который выводит скрипт.
document.write = function(str) {
$('#ID').append(str);
}
function inID() {
document.write('<sc' + 'ript type="text/javascript" src="http://an.yandex.ru/system/context.js"></sc' + 'ript>');
}
$(inID());
|
Цитата:
|
Цитата:
Поправил описание: Цитата:
|
Цитата:
|
Цитата:
$(function() {
if ($(#ID2).css('display') == 'block') return;
inID();
});
|
А почему не сделать так:
$('#ID').append('<script type="text/javascript" src="http://an.yandex.ru/system/context.js"></sc' + 'ript>');
или вообще тупо в html <script type="text/javascript" src="http://an.yandex.ru/system/context.js"></script>? Ответ же на конкртеный вопрос банален:
:
var oldWrite = document.write;
document.write = function(str) { $('#ID').append(str) };
// code
document.write = oldWrite;
|
Цитата:
|
Всем большое спасибо
|
Цитата:
|
Цитата:
|
| Часовой пояс GMT +3, время: 16:13. |