Я пытаюсь закрыть дочернее окно, если имя хоста совпадает с именем родителя и потомка, но его
<script type="text/javascript"> $(document).ready(function () { if (window.opener) { if (window.opener.location.indexOf(document.location.hostname) != -1) { window.opener.location = window.location; window.close(); } } }); </script>
, и получаю эту ошибку
Error: window.opener.location.indexOf is not a function Source File: https://example.com/default Line: 100
Объект location не является строкой, массивом или любым другим объектом, который имеет метод indexOf.Возможно, вы хотели использовать opener.location.href.indexOf(...)?
location
indexOf
opener.location.href.indexOf(...)
Проблема в том, что location это не String, это Location объект. Вы можете использовать toString метод location, чтобы преобразовать его в строку:
String
Location
toString
window.opener.location.toString().indexOf(document.location.hostname)