[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Помогите со криптом
Susik
Здравствуйте. Прошу вашей помощи. Этот скрипт открывает новую вкладку в новом окне.
<script>
var link = document.getElementById('Link1')
link.setAttribute("onclick","popupWin = window.open(this.href,'contacts','location,width=950,height=600,top=0'); popupWin.focus(); return false")
</
script>



<a id='Link1' href=''></a>


Этот скрипт применим только к одной ссылке с ID = Link1. Можно сделать так что бы вместо идентификатора был что то типо классов. Что бы этот скрипт был применим к множеству ссылок? Спасибо за внимание.

Зачем мне это надо? На странице сотни ссылок и из-за этого скрипта страница становиться перегружена. Отсутствие повторяющегося кода облегчит и сделает страницу более отзывчивой.

Функции и циклы не решают проблему оптимизации.

Возможно должно быть что то типо:
getElementsByClassname


_____________
SorokinFilipp265
var x = document.getElementsByClassName("L");
var i;
for (i = 0; i < x.length; i++) {
x[i].setAttribute("onclick","popupWin = window.open(this.href,'contacts','location,width=950,height=600,top=0'); popupWin.focus(); return false")
}


<a class='L' href=''></a>
Susik
Цитата (SorokinFilipp265 @ 28.07.2019 - 17:40)
var x = document.getElementsByClassName("L");
var i;
for (i = 0; i < x.length; i++) {
x[i].setAttribute("onclick","popupWin = window.open(this.href,'contacts','location,width=950,height=600,top=0'); popupWin.focus(); return false")
}


<a class='L' href=''></a>

Выглядит шикарно, но почему то не работает.


<script>
var
x = document.getElementsByClassName("L");
var i;
for (i = 0; i < x.length; i++) {
x[i].setAttribute("onclick","popupWin = window.open(this.href,'contacts','location,width=950,height=600,top=0'); popupWin.focus(); return false")
}
</script>






<a
class='L' href='info.php'>1</a><br />
<a
class='L' href='info.php'>2</a><br />


_____________
SorokinFilipp265
<!DOCTYPE html>
<body>
<a
class='L' href='1.php'>1</a><br />
<a
class='L' href='2.php'>2</a><br />
<script
type="text/javascript">
var
x = document.getElementsByClassName("L");
var i;
for (i = 0; i < x.length; i++) {
x[i].setAttribute('onclick','popupWin = window.open(this.href,"contacts","location,width=950,height=600,top=0"); popupWin.focus(); return false')
}
</script>
</body>

Kusss
Эээээ а средствами html не судьба обойтись ?
 target="_blank"
Susik
SorokinFilipp265 - Класс заработало. Я в восторге! Спасибо огромное! Счастья вам! Вы мне очень помогли.

_____________
FatCat
Цитата (Susik @ 5.08.2019 - 15:57)
заработало

Конечно заработало. Код скрипта выполняется в момент считывания строк кода. Если джаваскрипт должен манипулировать объектами, то он будет манипулировать только теми объектами, которые считаны раньше него. Если созданные объекты расположены после кода джаваскрипт, скрипт их не видит.
Обходится это помещением скрипта в функцию и обращением к функции после завершения загрузки страницы.

_____________
Бесплатному сыру в дырки не заглядывают...
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.