JavaScript弹出层,弹窗,对话框,web弹出层插件MyPopup诞生记

作者: 麦草CMS 日期: 2019/03/01 03:08:45

再发一篇试一下。


首先说一下,我写MyPopup弹出层的缘由。编程,对我来说,纯属个人爱好,即没有使用需求,也没有推广计划。其实,我一开始想涉入的是汇编和C(因为他离计算机的核心最近,最有挑战意义,嘿嘿),这就少不了在各大编程网站、社区游荡。慢慢的我对论坛程序的具体实现产生了兴趣,就谷歌(那时中国的互联网没有那么多条条框框,谷歌没必要有多守法,没有和中国政府闹掰)了一下,第一个映入我眼帘的是一个叫雷傲论坛(perl cgi)的论坛系统,就龟速下载进我的电脑折腾了几天。那时大约是2005至2006年,perl cgi盛行,不像现在,小白搜索编程相关的知识应该不会轻易涉及perl cgi的概念了。当时,没有任何编程知识积累的我也折腾不出什么花样来,仅仅是调整一下UI界面而已,折腾几下也就没了兴趣,自己就有了写一个论坛程序的想法,当然我也没有涉入perl cgi,因为在我打算储备perl cgi的时候,从网上搜到的都是perl cgi过时论。折腾了一段时间,进而知道了asp,asp.net,最终接触了PHP。那时asp、asp.net教程视频满天飞,PHP则更多的是那些程序员们的使用感受,教程很少,汉化版php手册(嘿嘿)应该是当时唯一参考,更甭说视频教程了;因为PHP出身寒门;当然我涉入PHP也最晚。由于asp.net要编译运行,且需借助visual studio编写,让习惯用文本编辑器的我对他有了抵触,认为他对一般人来说有点大材小用,而当时对PHP也只是知道其存在而已,所以最终我在那段时间是看着asp和java的免费视频教程进行双修(哈哈)。一度,我甚至在那段时间学完了asp,java的基础知识(当然现在无论是asp,还是Java都忘完了,只是有点模糊的印象而已)。随着时间的推移,我从网上越来越多的看到唱衰asp、唱响asp.net的声音;不爱见asp.net的我最终把目光投向了PHP5,从那时的我,直至如今已经无数遍通读php5、php7的汉化手册以期从中领悟PHP的精髓。时光如梭,岁月蹉跎,在我多遍通读PHP5手册、html手册、js宝典4、MySQL手册之后,终于正式开始了我的服务端为主、客户端为辅的齐头并进式(当时前端、后端的概念似乎尚未形成)的文章内容管理的个人写作历程。个人是重点,因为多次最终卡在前端优美的呈现上,个人精力、能力有限,当用傻瓜式但强大的PHP写出优秀的后端时,我发现浏览器渲染出的网页是那么干枯、单调,不得不进行美化,但对我这个从小没受过艺术熏陶没有艺术细胞的人来说做出优美的网页难比登天,只有经过无数次的更改调整以期达到协调。当时网页布局还是是table大行其道。第一次写好CMS服务端应该是2007了,前端大体布局是类似源码天空的那种,当时很流行,只是没有细化好;同时还写好了一个js日期插件、select联动插件,以及一些其他js功能,这些都在14年左右随着硬盘的一起遗失。07年的一天,随着年龄的增长,为了生存、生活考虑,加之乏味的(没有艺术细胞,也就没有美术爱好)页面设计让我对之失去兴趣,对一个高中生来说,编程又不能当饭吃,最终为了生计奔波那次CMS写作被无限期搁置。本人高中时期深度迷恋金庸,高中课程严重荒废,一直吃初中的老本,高考只考了3线,又没耐心复读。

时间到了2012年左右,PHP也全面进入了五时代,html进入五时代,网页布局进入了div+css时代,我在通读了html5手册、css3手册、PHP5手册、js宝典4(js宝典4兼容IE5678,MyPopup也是以宝典4为手册写的)、js宝典6、MySQL手册后,又一次开始了我的服务端为主、客户端为辅的齐头并进式的CMS写作。当然这次也是在完成PHP服务端后卡在前端页面设计上,最后感觉乏味失去兴趣而搁置。这次后端跟风PHP5使用了面向对象的概念,数据库方面进行多方面补充知识,形成了一个成熟的提高负载的方案。js方面没有什么插件形成,只是单一的功能实现。


2014年,我又一次捡起了CMS系统,这一次我没有写后端,复制了2012年的,只是数据库随着电脑多次做系统彻底弄没了,我直到现在也没有补充数据库,因为我的兴趣完全转到前端了,打算弄好前端再说。当然,这期间我也少不了多次通读各种手册。我吸取了前两次失败教训,打算从前端网页设计做起。CMS后台管理先是网上搜了一个模板,一行一行的把CSS、HTML弄懂了读透了,并修复了一些小BUG,做一些调整。做完这一切,我发现几天过去了,但我对用别人的创意不满足,就自己写了一个后台模板雏形,就是现在mycms.xyz上用的(前几天打开了CSS,不知把哪里删了或加了字符,页面渲染有点不正常,没有研究。意外哦)。前台模仿已死的百度多酷文学写了一个模板。这些应该都在百度网盘上存着,具体有没有存我不太确定!反正我电脑中没有了。不过2014的也是半途而废,在那一二十天时间完成了模板雏形后也搁置了。


2017年,应该是8月左右,网上闲逛,无意间发现layer弹出层,觉得挺有趣,具体怎么发现的我也搞不清。一时兴起,就想去研究源码。当我打开layer源码,发现只有一行(^-^),且一堆abcdef......的变量名,顿时兴味索然。同时起了写一写的欲望,于是就有了这篇闲篇 https://fly.layui.com/jie/14043/ ,以及这一篇 https://fly.layui.com/jie/14049/ (应该是当天重写了弹窗底层)。这一切在2017年的9月17日停止了,因为码云上上显示js弹出层2017年的更新停在了2017.9.17。


2019年1月20左右,兴趣使然,我又捡起了js弹出层,调试过程中不断出BUG。这一年多时间里,我的思维也改变了,折腾了两天,发现这个弹出层不能让我满意,又有了重写的念头。在阅读了代码后,我重构逻辑,重写大部分代码,同时增加增强功能,在1月23日完成,并于1月24推到了码云上。模仿程序员的惯例(^-^),定了一个版本号0.1.23。代码仓库: https://gitee.com/maicao/MyPopup


前两天,我躺床上时偶然想到自定义风格功能似乎有一个小BUG,具体有没有我不太确定,我最近的兴趣转到读VueRouter的源码上了,还没有看MyPopup源码。如果有,也就是加一句if判断语句的事。

我还说什么呢?
0.0019562244415283