当前位置: 首页 > news >正文

移动端页面弹出对话框效果Demo

核心思路:设置一个隐藏的(display:none;)、背景偏暗的div及其子div作为对话框。当点击某处时,将此div设置为显示。

核心代码例如以下(部分js代码用于动态调整div内容的行高。这部分代码能够忽略):

<!doctype html>
<html>
    <head>
        <meta charset="utf-8">
        <link rel="stylesheet" type="text/css" href="demo.css">
        <script src="jquery-1.10.1.min.js"></script>
        <script>
            function getHeight(className) {
                var height = $(className).height();
                return height;
            }
            function setLineHeight(className) {
                var height = getHeight(className) + "px";
                $(className).css("line-height",height);
            }
            $(function() {
                //调整行高并设置回调函数,窗体一动我也动
                setLineHeight(".init-page-btn");
                setLineHeight(".hidden-alert");
                window.onresize = function(){
                    setLineHeight(".init-page-btn");
                    setLineHeight(".hidden-alert");
                };

                //点击"点我"button就弹出窗体让我填写手机号码
                $(".init-page-btn").click(function(){
                    $(".hidden-bg").show();
                    setLineHeight(".hidden-alert");
                });

                //点击弹出窗体中的"叉",弹出窗体就消失
                $(".hidden-alert-close").click(function(){
                    $(".hidden-bg").hide();
                });
            });
        </script>
    </head>

    <body>
        <div class="init-page">
            <div class="init-page-btn">点我</div>
        </div>
        <div class="hidden-bg">
            <div class="hidden-alert">
                <span>请输入手机号:<input type="text"></span> 
                <div class="hidden-alert-close">叉</div>
            </div>
        </div>
    </body>
</html>

初始页面效果:

弹出对话框后的效果为:



查看效果和完整代码能够下载下面文件:

点击打开链接

相关文章:

  • qTunnel —— Go 开发的安全 Socket 网络隧道
  • (转)全文检索技术学习(三)——Lucene支持中文分词
  • 你猜!GitHub 最大开源贡献者是谁?
  • SecureCRT图形界面(通过设置调用Xmanager - Passive程序)
  • 关于linux文件中inode的理解
  • 二维数组查找
  • Linux系统编程——进程替换:exec 函数族
  • 恶灵传说之老程序员
  • 安装zabbix 遇到的故障
  • 场景案例:多表关联update(用户积分奖励)
  • Node.js+Koa开发微信公众号个人笔记(一)准备工作
  • Linux常见命令(二)
  • Django web project
  • okhttp使用总结
  • IP address could not be resolved: Temporary failure in name resolution
  • Google 是如何开发 Web 框架的
  • 【附node操作实例】redis简明入门系列—字符串类型
  • chrome扩展demo1-小时钟
  • const let
  • Golang-长连接-状态推送
  • iOS 颜色设置看我就够了
  • jquery cookie
  • python 学习笔记 - Queue Pipes,进程间通讯
  • uva 10370 Above Average
  • 动手做个聊天室,前端工程师百无聊赖的人生
  • 函数式编程与面向对象编程[4]:Scala的类型关联Type Alias
  • 简单实现一个textarea自适应高度
  • 前端
  • 前端每日实战 2018 年 7 月份项目汇总(共 29 个项目)
  • 浅谈Golang中select的用法
  • 责任链模式的两种实现
  • 好程序员大数据教程Hadoop全分布安装(非HA)
  • (11)MATLAB PCA+SVM 人脸识别
  • (9)STL算法之逆转旋转
  • (分享)自己整理的一些简单awk实用语句
  • (附源码)springboot 个人网页的网站 毕业设计031623
  • (更新)A股上市公司华证ESG评级得分稳健性校验ESG得分年均值中位数(2009-2023年.12)
  • (每日持续更新)jdk api之StringBufferInputStream基础、应用、实战
  • (收藏)Git和Repo扫盲——如何取得Android源代码
  • (译)计算距离、方位和更多经纬度之间的点
  • (转)nsfocus-绿盟科技笔试题目
  • ****Linux下Mysql的安装和配置
  • .NET 8.0 发布到 IIS
  • .NET Core Web APi类库如何内嵌运行?
  • .Net Framework 4.x 程序到底运行在哪个 CLR 版本之上
  • /usr/lib/mysql/plugin权限_给数据库增加密码策略遇到的权限问题
  • @Bean注解详解
  • @ModelAttribute 注解
  • [1159]adb判断手机屏幕状态并点亮屏幕
  • [2008][note]腔内级联拉曼发射的,二极管泵浦多频调Q laser——
  • [20171113]修改表结构删除列相关问题4.txt
  • [Android Studio] 开发Java 程序
  • [Android]竖直滑动选择器WheelView的实现
  • [AutoSar]BSW_Memory_Stack_003 NVM与APP的显式和隐式同步
  • [BUUCTF 2018]Online Tool