Mescalero
Newbie | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору Господа, прошу помощи. Сделал простенький плагин. Суть его в том, что при клике правой мышкой с зажатым Shift по ссылке типа"http://www.site1.com/....?=http://www.target.com" открывается окно с сайтом http://www.target.com. Вроде скрипт проще некуда, а я уже два часа мучаюсь - не могу понять, в чем проблема. <script language="JavaScript"> (function() { var x=document.links; for(i=0;i<x.length;i++) { x[i].oncontextmenu=function() { if(window.event.shiftKey) { var s=this.href //берем ссылку var ind1=s.indexof("=http",5) //ищем в ней вхождение "=http" s=s.substring(ind1) //вырезаем нужную часть (от "=http" и до конца строки) var v=window.open(s) //открываем окно с полученым адресом return false } } } }()) </script> Основу скрипта я взял из плагина CopyLink (копирует ссылку в буфер при нажатом Shift) Вроде должно все работать, но плагин не работает вообще, либо открывает совсем не то.... При попытке в блоке If оставить только строчку "var v=window.open(s)" и заменить её на "var v=window.open("rambler.ru") " (чтобы проверить работает ли плагин хоть как-то) получаю, что при правом клике с шифтом по [ссылке] получаю новое окно, где в строке адреса стоит "[ссылка]rambler.ru" - т.е. несмотря на то, что я явно указал адрес "rambler.ru" все равно вначале пристыковывается исходная ссылка. Совсем туплю уже - не могу понять. При попытках раскомментировать по одной строки блока If плагин вообще перестает работать.. Подскажите, в чем проблема. И заодно еще вопрос - никак не могу понять, где нужно ставить ";" в конце строки, а где нет. В плагинах полазил - где как.. и везде работает - и с ";" и без. | Всего записей: 6 | Зарегистр. 20-12-2005 | Отправлено: 04:25 13-03-2009 | Исправлено: Mescalero, 02:25 16-03-2009 |
|