zoukankan      html  css  js  c++  java
  • html5在android使用的技巧和问题

    一、特效按钮的进展
    之前的思路:css设置div的样式,在js中实现div对事件的响应,并改变div的样式,以实现动画效果。
    1:以动画的形式
      var bb = document.getElementById("element");
      bb.onclick=function(){
       bb.className="list-item-download-inner2";//改变类名,改变CSS样式
       var t = setTimeout("init()",500);  //以动画的方式,间隔0.5秒后将类名还原
      }
    这种方式只是一种相似的模拟,而且只有当手指离开按钮的时候这个方法才会执行。 而我们希望的效果是像本地代码中那样,手指点中一个效果,离开又一个效果。
     
    2:在html5中有关于触摸屏的事件:touchstart, touchend, touchmove于是我们引入jquery.js,代码改为如下:
    $('#element').bind("touchstart",function(e){
      e.className="list-item-download-inner2";//手指点中时改变类名,
    });
    $('#element').bind("touchend",function(e){
      e.className='list-item-download-inner';  //手指离开时,恢复类名,
    });
    这样,在网页中实现的效果,和在本地代码中实现的效果就一样了。算是一个小技巧,记下来。
     
    public void loadData (String data, String mimeType, String encoding)
    则会出现html代码中图片路径不对导致不能正常显示图片(通常是一个白色的固定大小的框,或者没有)
    当把路径改为绝对路径加上file://都还无法解决 终于,在网上查资料的时候发现了这个函数,正好解决这个问题 public void loadDataWithBaseURL (String baseUrl, String data, String mimeType, String encoding,String historyUrl) baseUrl是图片的目录,在html代码中就写关于此目录的相对路径就可以了,哇嘎嘎!~
    附带代码解释: String htmlPath = "file:///mnt/sdcard/test/11.html";
    String baseUrl = "file:///mnt/sdcard/test/";
    webView.loadDataWithBaseURL(baseUrl, data, "text/html", "utf-8", null);
    webView.loadUrl(htmlPath);
    则两个调用都可以显示正常的html网页了,并且前一种可以对针对不同分辨率大小的屏幕做缩放了!! 加载assets文件中的html如下:
    mWebView.loadUrl("file:///android_asset/demo.html");
  • 相关阅读:
    一个靠谱的技术方案文档是怎样的
    代码可复用性问题兼谈团队协作
    碎碎念五四
    碎碎念五五
    cmd命令查看本机的端口占用情况
    JS字符串里字符串嵌套和转义字符
    cef内嵌浏览器提示clodop未安装或未启动
    ADD_PRINT_IMAGE直接输出图片URL方式
    lodop缩放图片到完全适合纸张
    部署Kubernetes Cluster
  • 原文地址:https://www.cnblogs.com/crazywenza/p/2938864.html
Copyright © 2011-2022 走看看