javascript - 一般网站的 隐藏Dom是怎么维护的
ringa_lee
ringa_lee 2017-04-11 13:07:33
[JavaScript讨论组]

比如登录注册这种弹窗,可能很多页面都会用到。

是把代码放在js里面吗

ringa_lee
ringa_lee

ringa_lee

全部回复(8)
阿神

模块化/组件化开发
赶紧加入 Vue.js 的大本营吧(怎么感觉跟打广告似的)!

天蓬老师

webpack分包可以异步加载

let btn = document.querySelector('.btn');
let pluginFoo = false;
btn.addEventListener('click', function() {
    require.ensure([], function(require) {
        let Foo = require('./bundles/plugin.js');//点击时加载
        if (!pluginFoo) { //避免重复加载
            pluginFoo = new Foo('异步加载成功');
        } else {
            return;
        }
        pluginFoo.show(); //调用
    }, 'plugin');
});

可以看控制台Network里,一开始plugin.js是没有的,点击后才加载进来

黄舟

登录做个页面,弹窗里打开的是登录页面。

天蓬老师

这一类重用度比较高的组件,当然封装成一个独立的组件或者类比较合适。
首先,肯定是在 js 里面做封装。 如果是两三年前,一般是采用模板库 + jquery 这一套实现;现在有了 react/vue 这种视图组件,顺其自然就得到了封装。

黄舟

我比较土鳖的人,所以题主看一个方案:

// main.js
$('.J-Login').click(function() {
    var loginHtml = '<input><input><button>';
    // show html
    return false;
});
PHP中文网

老方法 是 借用webpack 把 弹层css 分离单独一个css文件,js里面拼接弹层html字符串 和弹层功能处理,把这个函数块 丢进jquery 原型中去。

怪我咯

看情况,一般这属于公共组件或代码!

怪我咯

这么写不如利用面向对象把一个弹窗登录页封装起来,当你点击的时候直接触发就好了,当然用React/vue这些会快速的不是一点点

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号