У меня есть кнопка html, которую я хочу закрыть при нажатии на текущее окно. Я думал, что могу просто установить функцию onclick, как показано ниже. Я что-то пропустил?
<button type="button" onclick="javascript:window.close()">Discard</button>
У меня есть кнопка html, которую я хочу закрыть при нажатии на текущее окно. Я думал, что могу просто установить функцию onclick, как показано ниже. Я что-то пропустил?
<button type="button" onclick="javascript:window.close()">Discard</button>
Если в атрибуте onclick вам не нужно указывать javascript.
<button type="button"
onclick="window.open('', '_self', ''); window.close();">Discard</button>
Это должно сделать это. Чтобы закрыть его, вам нужно открыть страницу script, следовательно, window.open. Вот статья, подробно объясняющая это: http://www.yournewdesigner.com/css-experiments/javascript-window-close-firefox.html
javascript может закрывать только открытое окно
Используйте код ниже. Это работает каждый раз.
<button onclick="self.close()">Close</button>
Он работает каждый раз в Chrome, а также работает на Firefox.
Этот сайт: http://www.computerhope.com/issues/ch000178.htm отвечает на script ниже
< input type="button" value = "Закрыть это окно" onclick = "self.close()" >
Я знаю, что на этот поток был дан ответ, но другое решение, которое может быть полезно для некоторых, особенно для тех, у кого есть несколько страниц, где они хотят иметь эту кнопку, заключается в том, чтобы дать вводу идентификатор и поместить код в файл JavaScript, Затем вы можете поместить код для кнопки на несколько страниц, занимая меньше места в коде.
Для кнопки:
<input type="button" id="cancel_edit" value="Cancel"></input>
в файле JavaScript:
$("#cancel_edit").click(function(){
window.open('','_parent','');
window.close();
});
Закрытие окна, открываемого пользователем через JavaScript, считается угрозой безопасности, поэтому не все браузеры допускают это (именно поэтому все решения являются хакерскими/обходными путями). Браузеры, которые постоянно поддерживаются, удаляют эти типы хаков, и решения, которые работают один день, могут быть нарушены на следующий.
Этот вопрос был рассмотрен здесь rvighne в аналогичном вопросе на эту тему.