Adding event handler to iframe to invoke on keyup

后端 未结 1 799
醉梦人生
醉梦人生 2021-01-28 03:05

On the webpage I have iframe, in which I display some content.
I want to run a function if any key is pressed inside iframe (iframe is editable).

I can do it using a

相关标签:
1条回答
  • 2021-01-28 03:52

    I guess you meant "do it without using the script manager"?

    You can do it this way (use attactEvent/addEventListener):

    <html>
    <head>
    <script type="text/javascript">
    function Init() {
        var _win = document.getElementById("iView").contentWindow;
        var _doc = _win.document;
        _doc.designMode = "on";
        if(_doc.addEventListener) {// if support addEventListener
            _doc.addEventListener("keyup", frameKeyUp, true)
        }
        else { //For IE
            _doc.attachEvent("onkeyup", frameKeyUp);
        }
    }
    function frameKeyUp(e){
        alert(e.keyCode);
    }
    </script>
    </head>
    <body onload="Init()" >   
    <iframe id="iView" style="width: 434px; height:371px"></iframe>
    </body>
    </html>
    

    Or using jQuery's event handler for "keyup":

    $('#iframe1').keyup(function(event){
      //... do your stuff here ..
      //use event.keyCode to get the asscoiated key
    });
    

    More info on keyboard event arg can be found here and here.

    0 讨论(0)
提交回复
热议问题