#javascript #jquery #html
#javascript #jquery #HTML
Вопрос:
Я новичок в программировании, и у меня вопрос, связанный с HTML и Javascript. У меня есть HTML-страница со 100 ссылками на ней. Я ищу способ, при котором, если я нажимаю на первую ссылку, то после нее переходят по остальным ссылкам без необходимости нажимать на них вручную. Есть ли способ сделать это?
Пожалуйста, помогите!!!
Комментарии:
1. Всплывающие окна. Что еще. Бу!!!
2. Большое спасибо, что ответили на мой вопрос. Вот что я использовал: <html> <head> <script type=»text / javascript» src=»jquery.js «></script> <тип сценария=»текст / javascript»> $(документ). готово(function(){ $(«a:first»).нажмите(function() { $(«a:not(:first)»).нажмите(); }); }); </ скрипт> </head> <body> <a href=»google.com «> google</a>; <a href=»yahoo.com «> yahoo</a>; </body> </html> Но когда я нажимаю на Google, другая страница не открывается. Где я ошибаюсь?
Ответ №1:
$("a:first").click(function() {
$("a:not(:first)").click();
});
Пример рабочего кода:http://jsfiddle.net/EJY8s
Комментарии:
1. Большое спасибо, что ответили на мой вопрос. Вот что я использовал: <html> <head> <script type=»text / javascript» src=»jquery.js «></script> <тип сценария=»текст / javascript»> $(документ). готово(функция(){ $(«a:first»).нажмите(функция() { $(«a:not(:first)»).нажмите(); }); }); </ скрипт> </head> <body> <a href=» google google.com «> google</a > <a href=» yahoo yahoo.com «> yahoo</a > </body> </html> Но когда я нажимаю на Google, другая страница не открывается. Где я ошибаюсь?
2. Проблема с этим ответом заключается в том, что он зависит от того, что он
target="_blank"
установлен на<a>
элементах, которых нет в вашем демонстрационном коде. Мой ответ более надежен, поскольку он не требует этого.
Ответ №2:
$('a').each(function() {
$(this).click();
});
Полный синтаксис смотрите в документации сайта Jquery.
Ответ №3:
Следующая часть Javascript сделает так, что вы сможете щелкнуть любую из этих 100 ссылок и открыть каждую из них в новом окне. 100 показов, как приятно.
$a = $("a");
$a.click(function(e){
e.preventDefault();
$a.each(function(){ window.open(this.href); });
});
Демонстрация:jsfiddle.net/JB2YF
Если вы хотите, чтобы все ссылки открывались только первым <a>
, это простая настройка:
$("a:first").click(function(e){
e.preventDefault();
$("a").each(function(){ window.open(this.href); });
});
Комментарии:
1. Большое спасибо, что ответили на мой вопрос. Вот что я использовал: <html> <head> <script type=»text / javascript» src=»jquery.js «></script> <тип сценария=»текст / javascript»> $(документ). готово(function(){ $(«a:first»).нажмите(function() { $(«a:not(:first)»).нажмите(); }); }); </ скрипт> </head> <body> <a href=»google.com «> google</a>; <a href=»yahoo.com «> yahoo</a>; </body> </html> Но когда я нажимаю на Google, другая страница не открывается. Где я ошибаюсь?
2. На первый взгляд, использование этого ответа не сработает, потому что он попытается открыть все ссылки в том же текущем окне, которое не будет работать должным образом. Вместо этого просто используйте вторую часть моего ответа выше.