Модераторы: Sardar, Aliance
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> есть вопрос, как изящней? 
:(
    Опции темы
0x00
  Дата 1.9.2010, 13:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 192
Регистрация: 3.4.2006

Репутация: нет
Всего: нет



возник вопрос.
с коллегой написали один и тот-же по функциональности код (замена target ссылки на странице, если ссылка на другой хост).
итак, какой код изящней по вашему мнению?

ВАРИАНТ1
Код

for(var i = 0; i < document.links.length; i++){
  if(!(document.links[i].href.toString().indexOf(location.hostname) + 1))
    document.links[i].target = '_blank';
}


ВАРИАНТ2
Код

  lh = location.hostname.match(/[a-zA-Z0-9\-]+\.[a-z]{2,5}$/);
  for(var i = 0; document.links[i]; i++) {
    ah = document.links[i].hostname.match(/[a-zA-Z0-9\-]+\.[a-z]{2,5}$/);
      if (ah.toString() != lh.toString()) {
        document.links[i].target = '_blank';
      }
  }


Это сообщение отредактировал(а) 0x00 - 1.9.2010, 14:36
PM MAIL   Вверх
ksnk
Дата 1.9.2010, 16:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прохожий
****


Профиль
Группа: Комодератор
Сообщений: 6855
Регистрация: 13.4.2007
Где: СПб

Репутация: 84
Всего: 386



Стоит поставить адрес http://xxx.com/mysite.com и проверить что скажут оба варианта. ;)

Первый вариант, конечно, компактнее. Хотя мне кажется, что так
Код

if(document.links[i].hostname!=location.hostname){
 ...
}

будет еще проще и правильнее. 

А в чем видится преимущество второго варианта? Обилие регулярок вряд ли скажется положительным образом на скорострельности...  


--------------------
Человеку свойственно ошибаться, программисту свойственно ошибаться профессионально ! user posted image
PM MAIL WWW Skype   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Форум для вопросов, которые имеются в справочниках, но их поиск вызвал затруднения, или для разработчика требуется совет или просьба отыскать ошибку. Напоминаем: 1) чётко формулируйте вопрос, 2) приведите пример того, что уже сделано, 3) укажите явно, нужен работающий пример или подсказка о том, где найти информацию.
 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | JavaScript: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0414 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.