HBuilderX

HBuilderX

极客开发工具
uni-app

uni-app

开发一次,多端覆盖
uniCloud

uniCloud

云开发平台
HTML5+

HTML5+

增强HTML5的功能体验
MUI

MUI

上万Star的前端框架

h5+免费教程、mui免费教程、各类app开发实战教程更新中,一起努力共同进步!!

mui

hcoder 一直致力于奉献高质量的视频教程,官网上 mui、h5 等免费教程播放量已经达到5万。
教程汇总
知识点 : JavaScript 快速提高视频教程
实战: MUI、H5 APP 实战教程 - 仿《有道词典》
知识点 : HBuilder 8.0.1 APP开发 - 新功能全接触
知识点 : APP开发教程 - 启动动画
知识点 : APP开发实例教程 - 窗口切换
知识点 : 移动端图片剪裁、上传视频教程
知识点 : app开发教程-用户注册、登录
实战 : APP开发实战 - 新闻客户端
知识点 : HTML 5 开发教程
知识点 : mui 全套教程

免费教程地址
http://www.hcoder.net/course/index/cate/4

继续阅读 »

hcoder 一直致力于奉献高质量的视频教程,官网上 mui、h5 等免费教程播放量已经达到5万。
教程汇总
知识点 : JavaScript 快速提高视频教程
实战: MUI、H5 APP 实战教程 - 仿《有道词典》
知识点 : HBuilder 8.0.1 APP开发 - 新功能全接触
知识点 : APP开发教程 - 启动动画
知识点 : APP开发实例教程 - 窗口切换
知识点 : 移动端图片剪裁、上传视频教程
知识点 : app开发教程-用户注册、登录
实战 : APP开发实战 - 新闻客户端
知识点 : HTML 5 开发教程
知识点 : mui 全套教程

免费教程地址
http://www.hcoder.net/course/index/cate/4

收起阅读 »

h5+免费教程、mui免费教程、各类app开发实战教程更新中,一起努力共同进步!!

mui

hcoder 一直致力于奉献高质量的视频教程,官网上 mui、h5 等免费教程播放量已经达到5万。
教程汇总
知识点 : JavaScript 快速提高视频教程
实战: MUI、H5+ APP 实战教程 - 仿《有道词典》
知识点 : HBuilder 8.0.1 APP开发 - 新功能全接触
知识点 : APP开发教程 - 启动动画
知识点 : APP开发实例教程 - 窗口切换
知识点 : 移动端图片剪裁、上传视频教程
知识点 : app开发教程-用户注册、登录
实战 : APP开发实战 - 新闻客户端
知识点 : HTML 5 + 开发教程
知识点 : mui 全套教程

免费教程地址
http://www.hcoder.net/course/index/cate/4

继续阅读 »

hcoder 一直致力于奉献高质量的视频教程,官网上 mui、h5 等免费教程播放量已经达到5万。
教程汇总
知识点 : JavaScript 快速提高视频教程
实战: MUI、H5+ APP 实战教程 - 仿《有道词典》
知识点 : HBuilder 8.0.1 APP开发 - 新功能全接触
知识点 : APP开发教程 - 启动动画
知识点 : APP开发实例教程 - 窗口切换
知识点 : 移动端图片剪裁、上传视频教程
知识点 : app开发教程-用户注册、登录
实战 : APP开发实战 - 新闻客户端
知识点 : HTML 5 + 开发教程
知识点 : mui 全套教程

免费教程地址
http://www.hcoder.net/course/index/cate/4

收起阅读 »

关于 Ajax请求跨域问题

技巧 AJAX跨域

这个问题困扰我很久以致我一直没办法调试。分享一下解决过程。
首先:这里有个相对完美的总结 ajax跨域,这应该是最全的解决方案了
基本原理:mui执行ajax请求在浏览器中,默认跨域,然后需要遵循一个 cors的协议。预先进行一次options请求的嗅探。
以判断服务器是否支持对应请求。
那么对于这个嗅探的options请求服务端需要作出响应。参看文前那篇文章,在chrome中看到需要给options响应设置响应头。
那么我的后端是用python实现的。
关键是 Access-Control-Allow-Headers:content-type, x-requested-with
我漏写了 content-type。

继续阅读 »

这个问题困扰我很久以致我一直没办法调试。分享一下解决过程。
首先:这里有个相对完美的总结 ajax跨域,这应该是最全的解决方案了
基本原理:mui执行ajax请求在浏览器中,默认跨域,然后需要遵循一个 cors的协议。预先进行一次options请求的嗅探。
以判断服务器是否支持对应请求。
那么对于这个嗅探的options请求服务端需要作出响应。参看文前那篇文章,在chrome中看到需要给options响应设置响应头。
那么我的后端是用python实现的。
关键是 Access-Control-Allow-Headers:content-type, x-requested-with
我漏写了 content-type。

收起阅读 »

IOS离线高德地图切换

IOS离线高德地图切换:
1、按照官方一 一配置OK;
2.、删除百度地图库libbmapimp.a;

  1. 完成

IOS离线高德地图切换:
1、按照官方一 一配置OK;
2.、删除百度地图库libbmapimp.a;

  1. 完成

独家系统全套mui,h5+教程,500节课程,文档,资料,20套app源码等

HelloH5 hellomui Hello HBuilder mui

HTML CSS H5 JS Castapp.js,MUI,H5+,PHP mysql,React-Native,Ecmascript6,React.js mui-UI实战 mui,h5+ APP开发实战功能 app开发{仿支付宝,仿微信,仿e袋洗,仿驾考宝典,仿微店,仿教室帮,仿饿了么,仿糗事百科,仿猫眼电影,仿天猫,仿今日头条,东翌同城约,东翌课堂,全套实战开发,让大家快速学习APP开发全体课程只需要499啦 想学习的点击链接咨询& 十点直播课程点击进入群:239503027

继续阅读 »

HTML CSS H5 JS Castapp.js,MUI,H5+,PHP mysql,React-Native,Ecmascript6,React.js mui-UI实战 mui,h5+ APP开发实战功能 app开发{仿支付宝,仿微信,仿e袋洗,仿驾考宝典,仿微店,仿教室帮,仿饿了么,仿糗事百科,仿猫眼电影,仿天猫,仿今日头条,东翌同城约,东翌课堂,全套实战开发,让大家快速学习APP开发全体课程只需要499啦 想学习的点击链接咨询& 十点直播课程点击进入群:239503027

收起阅读 »

HBuilder 8.1.1-alpha版发布,解决若干5+App问题

HBuilder 升级更新 Runtime

HBuilder 8.1.1.201704142048-alpha版发布,解决若干5+App问题

下载地址http://pan.baidu.com/s/1hs0O4eS

更新日志:

IDE

  • 优化启动速度
  • 解决流应用发布有时无法打开更新模式选择框的问题

App

  • Android平台修复图片压缩可能引起程序崩溃的问题
  • Android平台修复设置手动关闭Splash界面也可能会在首页加载完成后自动关闭的问题
  • Android平台修复在小米手机上二维码中调用开启闪光灯可能失效的问题
  • Android平台修复Webview子窗口隐藏(hide)后再添加到父窗口后第一次调用show方法可能无法显示的问题
  • iOS平台修复父子Webview嵌套时软键盘在adjustResize模式弹出时显示不正确的问题
  • iOS平台修复原生View控件添加到Webview窗口后未跟随窗口的关闭而销毁的问题
  • iOS平台修复Webview窗口无法加载URL地址中包含中文的问题
继续阅读 »

HBuilder 8.1.1.201704142048-alpha版发布,解决若干5+App问题

下载地址http://pan.baidu.com/s/1hs0O4eS

更新日志:

IDE

  • 优化启动速度
  • 解决流应用发布有时无法打开更新模式选择框的问题

App

  • Android平台修复图片压缩可能引起程序崩溃的问题
  • Android平台修复设置手动关闭Splash界面也可能会在首页加载完成后自动关闭的问题
  • Android平台修复在小米手机上二维码中调用开启闪光灯可能失效的问题
  • Android平台修复Webview子窗口隐藏(hide)后再添加到父窗口后第一次调用show方法可能无法显示的问题
  • iOS平台修复父子Webview嵌套时软键盘在adjustResize模式弹出时显示不正确的问题
  • iOS平台修复原生View控件添加到Webview窗口后未跟随窗口的关闭而销毁的问题
  • iOS平台修复Webview窗口无法加载URL地址中包含中文的问题
收起阅读 »

安装wgtu失败:HTML5+Runtime缺少升级包manifest.json中配置的模块:maps

差量升级


做升级升级时候的问题,一开始是认为项目的Maps权限不对,后面才发现是升级配置的MGTU里面的mainfest.json里面有Maps权限而原版本没有


这里面的manifest.json如果没配置Maps的SDK要把Maps权限去掉!

继续阅读 »


做升级升级时候的问题,一开始是认为项目的Maps权限不对,后面才发现是升级配置的MGTU里面的mainfest.json里面有Maps权限而原版本没有


这里面的manifest.json如果没配置Maps的SDK要把Maps权限去掉!

收起阅读 »

花小钱赚大钱的机会来啦,你还在顾虑什么呢,快速学习mui h5+ 开发自己的项目或者工作哦 全体的mui h5+ 课程

HBuilder mui

HTML CSS H5 JS Castapp.js,MUI,H5+,PHP mysql,React-Native,Ecmascript6,React.js mui-UI实战 mui,h5+ APP开发实战功能 app开发{仿支付宝,仿微信,仿e袋洗,仿驾考宝典,仿微店,仿教室帮,仿饿了么,仿糗事百科,仿猫眼电影,仿天猫,仿今日头条,东翌同城约,东翌课堂,全套实战开发,让大家快速学习APP开发全体课程只需要499啦 想学习的点击链接咨询三点直播课程点击进入 群:239503027

继续阅读 »

HTML CSS H5 JS Castapp.js,MUI,H5+,PHP mysql,React-Native,Ecmascript6,React.js mui-UI实战 mui,h5+ APP开发实战功能 app开发{仿支付宝,仿微信,仿e袋洗,仿驾考宝典,仿微店,仿教室帮,仿饿了么,仿糗事百科,仿猫眼电影,仿天猫,仿今日头条,东翌同城约,东翌课堂,全套实战开发,让大家快速学习APP开发全体课程只需要499啦 想学习的点击链接咨询三点直播课程点击进入 群:239503027

收起阅读 »

安卓也可以侧滑返回webview窗口

侧滑返回

给需要侧滑返回的页面加这些

<!doctype html>  
<html>  

    <head>  
        <meta charset="UTF-8">  
        <title></title>  
        <meta name="viewport" content="width=device-width,initial-scale=1,minimum-scale=1,maximum-scale=1,user-scalable=no" />  
        <link href="css/mui.min.css" rel="stylesheet" />  
        <script src="js/mui.min.js"></script>  
        <script type="text/javascript">  
            mui.init();  

            function plusReady() {  
                //获取当前窗口  
                var ws = plus.webview.currentWebview();  
                //监听当前侧滑窗口的右滑  
                ws.drag({  
                    direction: 'right',  
                    moveMode: 'followFinger'  
                }, {  
                    view: plus.runtime.appid,  
                    moveMode: 'silent'  
                }, function(e) {  
                //滑动到end执行mui.back()事件  
                    if(e.type == 'end' && e.result) {  
                        mui.back();  
                    }  
                });  
            }  
            if(window.plus) {  
                plusReady();  
            } else {  
                document.addEventListener("plusready", plusReady, false);  
            }  
        </script>  
    </head>  

    <body>  
        <header class="mui-bar mui-bar-nav">  
            <a class="mui-action-back mui-icon mui-icon-left-nav mui-pull-left"></a>  
            <h1 class="mui-title">窗口侧滑关闭</h1>  
        </header>  
    </body>  

</html>
继续阅读 »

给需要侧滑返回的页面加这些

<!doctype html>  
<html>  

    <head>  
        <meta charset="UTF-8">  
        <title></title>  
        <meta name="viewport" content="width=device-width,initial-scale=1,minimum-scale=1,maximum-scale=1,user-scalable=no" />  
        <link href="css/mui.min.css" rel="stylesheet" />  
        <script src="js/mui.min.js"></script>  
        <script type="text/javascript">  
            mui.init();  

            function plusReady() {  
                //获取当前窗口  
                var ws = plus.webview.currentWebview();  
                //监听当前侧滑窗口的右滑  
                ws.drag({  
                    direction: 'right',  
                    moveMode: 'followFinger'  
                }, {  
                    view: plus.runtime.appid,  
                    moveMode: 'silent'  
                }, function(e) {  
                //滑动到end执行mui.back()事件  
                    if(e.type == 'end' && e.result) {  
                        mui.back();  
                    }  
                });  
            }  
            if(window.plus) {  
                plusReady();  
            } else {  
                document.addEventListener("plusready", plusReady, false);  
            }  
        </script>  
    </head>  

    <body>  
        <header class="mui-bar mui-bar-nav">  
            <a class="mui-action-back mui-icon mui-icon-left-nav mui-pull-left"></a>  
            <h1 class="mui-title">窗口侧滑关闭</h1>  
        </header>  
    </body>  

</html>
收起阅读 »

其实安卓也可以侧滑返回webview窗口

侧滑返回

给要侧滑返回的窗口加这个代码

<!doctype html>  
<html>  

    <head>  
        <meta charset="UTF-8">  
        <title></title>  
        <meta name="viewport" content="width=device-width,initial-scale=1,minimum-scale=1,maximum-scale=1,user-scalable=no" />  
        <link href="css/mui.min.css" rel="stylesheet" />  
        <script src="js/mui.min.js"></script>  
        <script type="text/javascript">  
            mui.init();  

            function plusReady() {  
                //获取当前窗口  
                var ws = plus.webview.currentWebview();  
                //监听当前侧滑窗口的右滑  
                ws.drag({  
                    direction: 'right',  
                    moveMode: 'followFinger'  
                }, {  
                    view: plus.runtime.appid,  
                    moveMode: 'silent'  
                }, function(e) {  
                //滑动到end执行mui.back()事件  
                    if(e.type == 'end' && e.result) {  
                        mui.back();  
                    }  
                });  
            }  
            if(window.plus) {  
                plusReady();  
            } else {  
                document.addEventListener("plusready", plusReady, false);  
            }  
        </script>  
    </head>  

    <body>  
        <header class="mui-bar mui-bar-nav">  
            <a class="mui-action-back mui-icon mui-icon-left-nav mui-pull-left"></a>  
            <h1 class="mui-title">窗口侧滑关闭</h1>  
        </header>  
    </body>  

</html>
继续阅读 »

给要侧滑返回的窗口加这个代码

<!doctype html>  
<html>  

    <head>  
        <meta charset="UTF-8">  
        <title></title>  
        <meta name="viewport" content="width=device-width,initial-scale=1,minimum-scale=1,maximum-scale=1,user-scalable=no" />  
        <link href="css/mui.min.css" rel="stylesheet" />  
        <script src="js/mui.min.js"></script>  
        <script type="text/javascript">  
            mui.init();  

            function plusReady() {  
                //获取当前窗口  
                var ws = plus.webview.currentWebview();  
                //监听当前侧滑窗口的右滑  
                ws.drag({  
                    direction: 'right',  
                    moveMode: 'followFinger'  
                }, {  
                    view: plus.runtime.appid,  
                    moveMode: 'silent'  
                }, function(e) {  
                //滑动到end执行mui.back()事件  
                    if(e.type == 'end' && e.result) {  
                        mui.back();  
                    }  
                });  
            }  
            if(window.plus) {  
                plusReady();  
            } else {  
                document.addEventListener("plusready", plusReady, false);  
            }  
        </script>  
    </head>  

    <body>  
        <header class="mui-bar mui-bar-nav">  
            <a class="mui-action-back mui-icon mui-icon-left-nav mui-pull-left"></a>  
            <h1 class="mui-title">窗口侧滑关闭</h1>  
        </header>  
    </body>  

</html>
收起阅读 »

背景变灰解决分享

这个问题也是困扰了我1天,按照逐个找MUI.MIN.CSS文件的结构发现body{font-family:sans-serif;font-size:17px;line-height:21px;color:#000;background-color:#efeff4; 是控制BODY部分的灰色背景图,如果以后有遇到的码友将其更改就#fff或者#ffffff就行了。
如果是别的地方变灰逐个查找相应的COLOR 改为你想要的颜色即可。

继续阅读 »

这个问题也是困扰了我1天,按照逐个找MUI.MIN.CSS文件的结构发现body{font-family:sans-serif;font-size:17px;line-height:21px;color:#000;background-color:#efeff4; 是控制BODY部分的灰色背景图,如果以后有遇到的码友将其更改就#fff或者#ffffff就行了。
如果是别的地方变灰逐个查找相应的COLOR 改为你想要的颜色即可。

收起阅读 »

更多加载AJAX方法

   var page=1; /*延期加载专用*/  
   var status=false; /*冲突加载专用*/  
    function loadMore(url,total){  
        if(status){  
            return false;  
        }  
        setTimeout(function(){  
            page++; /*分页专用*/  
            $.ajax({  
                //提交数据的类型 POST GET  
                type:"POST",  
                //提交的网址  
                url:url,  
                //提交的数据  
                data:"json=home&page="+page,  
                //返回数据的格式  
                datatype: "json",//"xml", "html", "script", "json", "jsonp", "text".  
                //在请求之前调用的函数  
                beforeSend:function(){  
                    status=true;  
                    $("#loading").show().html('加载中,请稍候');  
                },  
                //成功返回之后调用的函数  
                success:function(result){  
                    /*console.info(result);*/  
                    status=false;  
                    $("#loading").hide();  
                    $.each(result, function(key,value){  

                    });  
                    if(total>result.length){  
                        $("#loading").show().html('没了,还加载啥');  
                        status=true;  
                    }  
                },  
                //调用出错执行的函数  
                error: function(){  
                   status=true;  
                    $("#loading").show().html('网络异常');  
                }  
            });  
        }, 500);  
    }  

    $(function(){  
        $(window).scroll(function() {  
            //当内容滚动到底部时加载新的内容  
            if ($(this).scrollTop() + $(window).height() + 30 >= $(document).height() && $(this).scrollTop() > 30) {  
                //当前要加载的页码  
                loadMore(url,20);  
            }  
        });  
    });
继续阅读 »
   var page=1; /*延期加载专用*/  
   var status=false; /*冲突加载专用*/  
    function loadMore(url,total){  
        if(status){  
            return false;  
        }  
        setTimeout(function(){  
            page++; /*分页专用*/  
            $.ajax({  
                //提交数据的类型 POST GET  
                type:"POST",  
                //提交的网址  
                url:url,  
                //提交的数据  
                data:"json=home&page="+page,  
                //返回数据的格式  
                datatype: "json",//"xml", "html", "script", "json", "jsonp", "text".  
                //在请求之前调用的函数  
                beforeSend:function(){  
                    status=true;  
                    $("#loading").show().html('加载中,请稍候');  
                },  
                //成功返回之后调用的函数  
                success:function(result){  
                    /*console.info(result);*/  
                    status=false;  
                    $("#loading").hide();  
                    $.each(result, function(key,value){  

                    });  
                    if(total>result.length){  
                        $("#loading").show().html('没了,还加载啥');  
                        status=true;  
                    }  
                },  
                //调用出错执行的函数  
                error: function(){  
                   status=true;  
                    $("#loading").show().html('网络异常');  
                }  
            });  
        }, 500);  
    }  

    $(function(){  
        $(window).scroll(function() {  
            //当内容滚动到底部时加载新的内容  
            if ($(this).scrollTop() + $(window).height() + 30 >= $(document).height() && $(this).scrollTop() > 30) {  
                //当前要加载的页码  
                loadMore(url,20);  
            }  
        });  
    });
收起阅读 »