Неперехваченная ошибка типа: не удается прочитать путь к свойству проблема

#javascript #typeerror

#javascript #ошибка типа

Вопрос:

У меня есть HTML-страница с iframe, похожая на эту:

 <div id="searchbox" background-size: cover;" class="img-responsive center-block" >
   <iframe src="/custom_scripts/tbox/tbox.aspx" />
   <div id="blackout" style="background-image:url(/skins/default/images/blackout.png); opacity: 0.5; display:none;"></div>
</div>
 

Итак, в tbox.aspx у меня есть:

     <script type="text/javascript">
        function blockme() {
            document.getElementById('blackout').style.display = 'block';
        }
    </script>

<div id="divResults" class="options" onclick="blockme();"></div>
 

Однако, когда я нажимаю на «divResults», он выдает мне сообщение об ошибке «Uncaught TypeError: не удается прочитать свойство ‘style’ null»

Я знаю, что эта ошибка связана с путем к элементу «затемнения», который я не могу просмотреть в документе, чтобы найти его.

Любая помощь?

Ответ №1:

Ваша функция blockme выполняется в a iframe , это означает document iframe только содержимое документа, iframe не включает элемент с идентификатором blackout . Он принадлежит parent документу.

Давайте попробуем:

     <script type="text/javascript">
        function blockme() {
            parent.document.getElementById('blackout').style.display = 'block';
        }
    </script>