Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Вставка ссылок под Greasemonkey (https://javascript.ru/forum/misc/11770-vstavka-ssylok-pod-greasemonkey.html)

Бобр 12.09.2010 18:26

Вставка ссылок под Greasemonkey
 
Следующий код вполне работает если его просто вставить в текст странички.

<span id="Test1">test place</span>

<SCRIPT type=text/javascript>
  Tag1 = document.getElementById('Test1');
  Tag1.innerHTML = '<a href=http://google.com>Test1</a>'
   +' <a href=javascript:Alert2("Test1")>Alert2("Test1")</a>';
  function Alert2(s) {alert(s)};
</SCRIPT>


Но если перенести скрипт из странички в отдельный файл-скрипта, который бы вызывался GreaseMonkey, то все href исчезнут. И будет вместо ссылок просто текст 'Test1 Alert2("Test1")'.

Чего они там в своей кривой GreaseMonkey не доделали - не знаю. Но неудобств это доставляет вагон и маленькую тележку. Если нужно вставить большой кусок кода, то приходится все ссылки оббегать и под каждую ссылку вставлять addEventListener. Достали они в общем просто с этой проблемой.

Нельзя ли эту проблему как-нибудь решить?

Бобр 15.09.2010 16:25

Здесь никто не пользуется Greasemonkey ?

subzey 15.09.2010 17:32

Попробуйте так:
<span id="Test1">test place</span>

<SCRIPT type=text/javascript>
  Tag1 = unsafeWindow.document.getElementById('Test1');
  Tag1.innerHTML = '<a href=http://google.com>Test1</a>'
   +' <a href=javascript:Alert2("Test1")>Alert2("Test1")</a>';
  unsafeWindow.Alert2 = function(s) {alert(s)};
</SCRIPT>

З.Ы. Я не пользуюсь Greasemonkey, так что, может и не заработать.


Часовой пояс GMT +3, время: 04:16.