Я хочу показать всплывающее окно, когда пользователь нажимает на заголовок браузера. Я попытался установить onclick событие в тег заголовка HTML.
Существуют ли какие-либо другие способы достижения этой функции?
Пробный код:
<html>
<head>
<title onclick="show_popup();">Test</title>
<script>
function show_popup(){
//pop up window code.
}
</script>
</head>
<body>
<div id="popup_window"></div>
</body>
</html>
Заголовок не является видимым элементом для клика, поэтому он не может иметь поведение пользовательского интерфейса, например, события кликов и т.д.
Кроме того, содержимое элемента заголовка отображается за пределами html-страницы (на вкладке браузера или в панели заголовка браузера), поэтому вы не можете взаимодействовать с ним в JavaScript.
Вы можете установить атрибут onclick
в элементе title
, поскольку этот атрибут разрешен во всех элементах, в соответствии с HTML5 CR. Имеет ли это эффект, это другой вопрос.
Элемент title
не указан в документе по умолчанию, поэтому невозможно щелкнуть по нему. Это можно изменить с помощью CSS:
head, title { display: block }
В современных браузерах это сделает элемент title
видимым и доступен для просмотра.
Однако нет оснований для этого. Чтобы показать что-то видимое на странице, гораздо лучше использовать нормальный контент внутри элемента body
.
Перенос содержимого элемента title
за пределы области документа в окне браузера, например, в верхней строке или на вкладке, является совершенно другой проблемой, а не спецификацией HTML, CSS, JavaScript или DOM. Обычно его невозможно контролировать каким-либо образом; если есть способ в определенной среде, он зависит от браузера.
id="something"
а затем получить егоinnerHTML
например, как уже упоминалось, вы не можете взаимодействовать с ним, поскольку браузеры не поддерживают такую функцию.