jiangguangxian 2010-05-12 16:45
浏览 220
已采纳

iframe自制文本编辑器事件问题

我现在用iframe实现自定义文本编辑器,现在简易效果如下:
效果如iframe1.bmp显示,
我在选中的文字上加了连接。
但是我想如果鼠标点击到加过连接的地方,显示弹出层。这个事件怎么加。
效果如iframe2.bmp

  • 写回答

3条回答 默认 最新

  • weixin_42518082 2010-05-13 09:30
    关注

    简单的例子, 点击iframe中链接, 或弹出alert.
    得到iframe的document, 为iframe的document添加事件
    最好选用js框架, 否则处理比较麻烦

    a.html
    [code="html"]
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">



    Dialog function getIframeDoc(iframe) { return iframe.contentDocument || iframe.contentWindow.document; } function addEvent(el, event, listener) { if (el.addEventListener){ el.addEventListener(event, listener, false); } else if (el.attachEvent){ el.attachEvent('on' + event, listener); } } function fun(){ var iframeDoc =getIframeDoc(document.getElementById("x")); iframeDoc.designMode = "On"; var anchors = iframeDoc.getElementsByTagName("a"); for(var i=0,len =anchors.length;i<len;i++){ addEvent(anchors[i],"click", (function(){ var anchor = anchors[i] return function(){ doClick(anchor) } })()); } } function doClick(anchor ){ alert("点击了 " +anchor ) }






    [/code]

    b.html
    [code="html"]
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">



    Dialog


    cxxxxxxx127.0.0.1xcccccc127.0.0.2cc


    [/code]
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?