前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >iframe页面点击页面其它地方隐藏某元素

iframe页面点击页面其它地方隐藏某元素

原创
作者头像
李磊
修改2019-08-12 11:28:00
1.9K0
修改2019-08-12 11:28:00
举报
文章被收录于专栏:this
代码语言:txt
复制
<a href="javascript:;" id="showOrHide"></a>

<!-- 注意此处的$()不是jquery 是document.getElementById()封装为方法 -->
<div id="show-or-hide">
	<a href="javascript:$('show-or-hide').style.display='none';parent.location.href='/auth/login'">切换账号</a>
	<a style="font-size: 12px;text-align: center" href="javascript:$('show-or-hide').style.display='none';parent.location.href='/auth/logout'">退出</a>
</div>
代码语言:txt
复制
// 定义stopPropagation方法的使用 该方法将停止事件的传播 阻止它被分派到其他Document节点
function stopFunc(e) {
    e.stopPropagation ? e.stopPropagation() : e.cancelBubble = true;
};

// 获取元素的id
function $(id) {
    return document.getElementById(id);
};

// 初始化加载
window.onload = function () {

    // 当前页面
    document.onclick = function (e) {
        $("show-or-hide").style.display = "none";
        showFlag = true;
    }

    // iframe页面 content为iframe元素的id
    $("content").contentWindow.document.onclick = function (e) {
        $("show-or-hide").style.display = "none";
        showFlag = true;
    }

    // 第二次点击名称会隐藏
    let showFlag = true;
    $("showOrHide").onclick = function (e) {
        if (showFlag) {
            $("show-or-hide").style.display = "block";
            showFlag = false;
        } else {
            $("show-or-hide").style.display = "none";
            showFlag = true;
        }
        e = e || event;
        stopFunc(e);
    }

    $("show-or-hide").onclick = function (e) {
        $("show-or-hide").style.display = "none";
        showFlag = true;
        e = e || event;
        stopFunc(e);
    }
}

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档