LINUX.ORG.RU

Opera. Загрузка стороннего js в bookmarklet-е.


0

1

Bookmarklet подгружает js скрипт со стороннего сайта. В FF, Chrome, IE работает, в Opera (v 11.01, Linux) - нет. Просто ничего не происходит, но если грузить скрипт со своего сайта, то всё нормально. Подозреваю, что это защита от XSS, но остальные-то браузеры такое разрешают. Можно ли как-то побороть, может опция в самой опере есть (не Allow Cross Network Navigation)?

★★
Ответ на: комментарий от bga_

Нет. Пробовал так:

BR_sc=BR_d.createElement('script');
BR_sc.setAttribute('src','<Мой URL>');
BR_h=BR_d.getElementsByTagName('head').item(0);
BR_h.insertBefore(BR_sc,BR_h.firstChild);

BR_d=document;
BR_d.body.appendChild(document.createElement('script')).src='<Мой URL>';
SOmni ★★
() автор топика
Ответ на: комментарий от SOmni

Повесь onload onerror onreadystatechange и смотри что сработает. Еще может какой userjs по beforeLoad превентит тебя. Самое главное в консоль посмотри, опера отчитывется о всех ошибках и самовольностях :)

bga_ ★★★★
()
Ответ на: комментарий от bga_

В том-то и дело, что в консоли ошибок нет. События проверю.

SOmni ★★
() автор топика
Ответ на: комментарий от bga_

Что-то события вообще никогда нигде не срабатывают, ни в опере, ни в FF, ни даже при успешной загрузке:

BR_sc.onload=function(){alert('load');};
BR_sc.onerror=function(){alert('error');};
BR_sc.onreadystatechange=function(){alert('change');};
И в консоли пустота.

SOmni ★★
() автор топика

>одозреваю, что это защита от XSS, но остальные-то браузеры такое разрешают.

Решето!

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.