В чем разница между этими двумя HTML-якорями?

#javascript #html #hyperlink #anchor #broken-links

#javascript #HTML #гиперссылка #привязка #неработающие ссылки

Вопрос:

Я попытался использовать средство проверки ссылок, чтобы найти любые неработающие ссылки, но вторая не включена, displayedPage.html отображается ошибка 404, но она не отображается в отчете проверки ссылок. В чем разница между ними <a></a> ? Почему второй якорь не был проверен как ссылка?

 <a href="showpage.go?page=mypageamp;room=yours">
<span>my own room</span>
</a>
  

второй:

 <a onclick="javascript:window.open('my/displayedPage.html', '', 
 'width=590,height=450,scrollbars=no,resizable=no'); return true;"
 href="javascript:void(0)">Show Me</a>
  

Комментарии:

1. во многих браузерах вы не можете нажать control click, shift click или щелкнуть правой кнопкой мыши > открыть в новом окне по 2-й ссылке.

Ответ №1:

У второго нет href атрибута, который можно проверить с помощью используемой вами программы проверки ссылок.

Предположительно, используемая вами программа не понимает javascript: протокол и / или игнорирует любые другие протоколы, кроме http и ftp .

Ответ №2:

Кажется, что ваш инструмент игнорирует ссылки javascript. Вторая ссылка не является чистой html-ссылкой, это ссылка, созданная вызовом javascript.

Ответ №3:

Вторая ссылка недопустима, для ее работы требуется javascript, что, вероятно, не проверяет средство проверки ссылок (я полагаю, оно выполняет по существу статический анализ).

У вас всегда должен быть установлен href для ссылки, которую вы хотите открыть, и прикрепить улучшенное поведение javascript, что-то вроде:

 <a onclick="window.open(this.href, '', 
   'width=590,height=450,scrollbars=no,resizable=no'); return true;" 
   href="my/displayedPage.html" target="_blank">Show Me</a>
  

Комментарии:

1. Но мне нужен displayedPage.html загружается в новом браузере, в то время как старый браузер остается со старой страницей.

Ответ №4:

потому что во втором браузер просто выполняет javascript, когда вы нажимаете на эту ссылку. этот скрипт открывает ссылку в новом окне с заданными параметрами

Ответ №5:

Средство проверки ссылок не знает javascript