- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
if (result.indexOf('myWinLoadSD') > -1) {
_uWnd.alert('<br /><b>Вы успешно проголосовали</b>', '', {
w: 250,
h: 70,
tm: 3000
});
_uWnd.close('cap');
} else {
result = $(re).text().replace(/<div[^>]+/, '').replace(/<\/div>/, '').replace(/>\_/, '_');
$('body').append('<scri' + 'pt type="text/jav' + 'ascript">' + result + '<' + '/script>');
}
});
Фэйк?
append('<script type="text/javascript">' + result + '</script>');
то скрипт перестает работать, а через FireBug или консоль разработчика показывается ошибка, щас даже скрин сделаю...
http://clip2net.com/s/16MZK
Такое подозрение, что ему шаблон рвут две подряд идущие двойные кавычки. Или я ошибаюсь?
сейчас вот так и всё работает, двойные кавычки тут не причем
Сам задался вопросом а зачем так? но так и не понял тогда, а сейчас вот, выполняя заказ, столкнулся с проблемой этой и попробовал как там, итог: работает... не знаю почему но интерпретатор просто не хочет воспринимать тег script внутри уже существующего script... но почему? пока не нашел ответа на этот вопрос... подожду тут ответа, может кто знает
А добавив произвольный текст в документ вы можете ошибится и получится совсем не то, что вы ожидали.
Строкой выше:
Не проще ли было сразу удалить дивы через DOM, тогда бы и следующая строка не понадобилась?
К сожалению, селектор :contains("_") мы применить не можем, потому что он удалит лишнее. Хотя... тут слишком мало контекста. Мы не знаем, кто такой re.
если успешно: http://clip2net.com/s/16P6H
если ошибка: http://clip2net.com/s/16P6X
опять же здесь идет див который я удаляю регуляркими, а скрипт выводиться текстом и опять же ТЕРЯЕТСЯ ТЕГ SCRIPT! вот поэтому ставил это:
'<scri' + 'pt type="text/jav' + 'ascript">' + result + '<' + '/script>'
чтобы результат выводился в скрипте на странице
Предварительно из $(re).text() нужно выгрызть дивы. Если мы его загрузим как DOM, то последствия могут быть непредсказуемы, потому что это скрипт, а не сырой HTML-код. Тогда, действительно, лучше выгрызать регуляркой.
Почему обязательно нужно добавлять какую-то парашу, которая запустит какой-то скрипт, выводящий какую-то другую парашу?
А если жс выключен?
Или можно попробовать внутри тега script делать <![CDATA[любой говнокод]]>
Смотреть здесь: http://s105.ucoz.net/src/uwnd.js
http://www.felgall.com/jsformat.htm
http://www.gosu.pl/decoder/
http://www.hallvord.com/opera/scriptformatter.php
http://www.prettyprinter.de/module.php?name=PrettyPrinter
http://blog.djh5e.org/wp-content/jsf.html
http://jsbeautifier.org/
http://javascript.about.com/library/blformat.htm
http://zhanzhang.ip.la/jsformat/
Хотя, согласен с тем, что лучше было бы найти исходник этой гадости.