即使等待.onload也无法将事件侦听器添加到iframe元素

时间:2019-08-30 09:53:01

标签: javascript html dom iframe

我现在尝试访问我的网站(mylily.eu/pages/shop-local)上的iFrame,并将事件侦听器添加到输入字段和按钮。问题是我使用的插件嵌入在iFrame中,因此这就是为什么我必须首先使用此替代方法的原因。

我认识到我必须等待iFrame中的DOM完全加载,这就是为什么我将onload函数添加到iFrame的原因,但是它仍然无法正常工作,我不知道为什么。

<script>
var iframe = document.getElementById("store-locator-wrapper");

  iframe.onload = function() {

    $('#MapAddress').keypress(function(event){
      var keycode = (event.keyCode ? event.keyCode : event.which);
      if(keycode == '13'){
        document.getElementById("geolocation-failed").style.display="none 
        !important";  
      }
    });

    document.getElementById("lsl-search-button").addEventListener("click", 
    function(){
      document.getElementById("geolocation-failed").style.display="none 
      !important";
    });
  }
</script>

该代码应该执行的操作是使红色的“找不到地理位置”消息消失,如果用户拒绝从浏览器(在输入字段下方)访问位置,则会显示该消息。

该消息应消失 1.如果用户在输入字段上按Enter键(代码的第一部分) 2.如果用户单击输入字段下方的搜索按钮

要查看此消息,您必须转到mylily.eu/pages/shop-local并拒绝位置访问。

0 个答案:

没有答案