jquery-confirm弹窗出现子页面JS影响父页面的问题

使用JQuery弹框的时候如果利用content引入新的页面会出现问题

产生问题的原因:父页面JS,直接通过弹框引入content: ‘url:index.html’,会将父页面的样式和脚本替换成子页面的,关闭子页面弹框之后会对父页面的功能产生影响.


嵌套iframe
引入url的时候在url外层嵌套<iframe></iframe>标签,将url内容完全独立.使用这种方法将弹框和内容完全分离的方法可以解决该问题,但是页面看起来会不协调,对后续JS传参和button事件也会有影响.

JS.CSS覆盖
因为是父页面的子页面,功能差距应该不会太大,JS和CSS重合度应该比较高.
1.可以采用完全复制父页面引用的JS和CSS到子页面,替换了父页面仍然不会有什么大问题,但是仍可能出现页面嵌套现象
2.可以采用去除掉子页面的所有JS和CSS,让它直接调用父类的CSS和JS,这样问题能够较好的解决

用bootstrap来替代JQuery弹窗
方法一:

html:
<div class="modal fade" id="myModal" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true">
    <div class="modal-dialog">
        <div class="modal-content" style="border-radius: 5px;border-top: solid 7px #3c8dbc;-webkit-animation-name: type-orange;animation-name: type-orange;">
            <div class="modal-header">
                <h4 class="modal-title" id="#"></h4>
            </div>
            <div class="modal-body">
                 <iframe id="##" frameborder="no" style="width:100%"></iframe> 
            </div>
        </div>
    </div>
</div>
js:
$("##").attr("src","xxxxxx");
//弹出
$("#").modal('show');
//关闭 
$("#").modal('hide');

方法二:

html:
<div class="modal fade" id="#" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true">
    <div class="modal-dialog">
        <div class="modal-content" style="border-radius: 5px;border-top: solid 7px #3c8dbc;-webkit-animation-name: type-orange;animation-name: type-orange;">
            
        </div>
    </div>
</div>
js
$("#").modal({  
    remote: "url"  
}); 
//弹出
$("#").modal('show');
//关闭 
$("#").modal('hide');

动态html
也可以直接通过JQuery时间来生成相应的HTML代码,动态生成弹出框来实现此功能.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值