jQuery Mobile动态刷新页面样式的实现方法


Posted in Javascript onMay 28, 2016

当我们使用Ajax或者javascript动态在页面上添加元素后,如添加select控件的option元素,添加ul的li元素。添加之后我们会发现,它们显示的样式不是jQuery Mobile的炫酷样式了,而变成了很丑陋的元素样式。如下图所示:

 jQuery Mobile动态刷新页面样式的实现方法

代码如下:

<script>
      function myFunction() {
        var ul = document.getElementById("myul");
        var li1 = "<li data-role=\"fieldcontain\">信息2</li>";
        var li2 = "<li data-role=\"fieldcontain\">信息3</li>";
        ul.innerHTML += li1;
        ul.innerHTML += li2;
      }
    </script>

    <!-- listview测试 -->
     <ul data-role="listview" data-inset="true" id="myul">
         <li data-role="list-divider">信息列表</li>
         <li data-role="fieldcontain">信息1</li>
     </ul>

可以看到,jQuery Mobile并没有对于新添加的元素进行渲染。这种情况下就需要对元素的样式进行刷新。

刷新代码如下:

<script>
      function myFunction() {
        var ul = document.getElementById("myul");
        var li1 = "<li data-role=\"fieldcontain\">信息2</li>";
        var li2 = "<li data-role=\"fieldcontain\">信息3</li>";
        ul.innerHTML += li1;
        ul.innerHTML += li2;
        
        //刷新jQuery Mobile样式
        $('#myul').listview('refresh');
      }
    </script>

其实最重要的一句刷新代码是:$('#myul').listview('refresh');

刷新后的效果如下图所示:

 

jQuery Mobile动态刷新页面样式的实现方法

注意:在使用js或者jQuery获取控件(例如:button、checkbox、radiobutton等)的值时,也是需要先刷新,否则无法获取到最新的值。

下面列出常用的标签的refresh操作,其他的可以举一反三。

1.  Listview的refresh操作:

$('#mylistid').listview('refresh');

2. select menu的refresh操作:

var myselect = $("#myselect");

myselect[0].selectedIndex = 2;

myselect.selectmenu("refresh");

3. Checkboxes的refresh操作:

$("#mycheckboxid").attr("checked",true).checkboxradio("refresh");

4. Radio buttons的refresh操作:

$("#myradioid").attr("checked",true).checkboxradio("refresh"); 

新加的:

 各类标签的刷新

1.Textarea fields

$('body').prepend('<textarea id="myTextArea"></textarea>');
$('#myTextArea').textinput();

2.Text input fields

$('body').prepend('<input type="text" id="myTextField" />');
$('#myTextField').textinput();

3.Buttons

$('body').append('<a href="" data-theme="e" id="myNewButton">testing</a>');
$('#myNewButton').button();

4.Combobox or select dropdowns

<label for="sCountry">Country:</label>
<select name="sCountry"id="sCountry">
<option value="">Where You Live:</option>
<option value="ad">Andorra</option>
<option value="ae">United Arab Emirates</option>
</select> 
 
var myselect = $("#sCountry");
myselect[0].selectedIndex = 3;
myselect.selectmenu('refresh');

5.Listviews

<ul id="myList"data-role="listview"data-inset="true">
<li>Acura</li> 
<li>Audi</li> 
<li>BMW</li> 
</ul> 
 
$('#mylist').listview('refresh');

6.Slider control

<div data-role="fieldcontain">
<label for="slider-2">Input slider:</label>
<input type="range"id="slider-2"value="25"min="0"max="100"/>
</div> 
 
$('#slider-2').val(80).slider('refresh');

7.Toggle switch

<div data-role="fieldcontain">
<label for="toggle">Flipswitch:</label>
<select name="toggle"id="toggle"data-role="slider">
<option value="off">Off</option>
<option value="on">On</option>
</select> 
</div> 
 
var myswitch = $("#toggle");
myswitch[0].selectedIndex = 1;
myswitch .slider("refresh");

8.Radio buttons

<div data-role="fieldcontain">
  <fieldset data-role="controlgroup"data-type="horizontal">
   <legend>Layout view:</legend>
     <input type="radio"name="radio-view"value="list"/>
     <labelfor="radio-view-a">List</label>
     <input type="radio"name="radio-view"value="grid"/>
     <labelfor="radio-view-b">Grid</label>
     <input type="radio"name="radio-view"value="gallery"/>
     <labelfor="radio-view-c">Gallery</label>
  </fieldset>
</div> 
 
$("input[value=grid]").attr('checked',true).checkboxradio('refresh');

9.Checkboxes

<div data-role="fieldcontain">
<fieldset data-role="controlgroup">
<legend>Agree to the terms:</legend>
<input type="checkbox"name="checkbox-1"id="checkbox-1"class="custom"/>
<label for="checkbox-1">I agree</label>
</fieldset> 
</div> 
 
$('#checkbox-1').attr('checked',true).checkboxradio('refresh');

以上这篇jQuery Mobile动态刷新页面样式的实现方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
javascript 简练的几个函数
Aug 29 Javascript
使用JavaScript构建JSON格式字符串实现步骤
Mar 22 Javascript
jQuery.Validate验证库的使用介绍
Apr 26 Javascript
JavaScript中的值类型详细介绍
Dec 29 Javascript
7个jQuery最佳实践
Jan 12 Javascript
在Mac OS上安装使用Node.js的项目自动化构建工具Gulp
Jun 18 Javascript
AngularJS辅助库browserTrigger用法示例
Nov 03 Javascript
javascript作用域链与执行环境详解
Mar 25 Javascript
canvas绘制一个常用的emoji表情
Mar 30 Javascript
开发Node CLI构建微信小程序脚手架的示例
Mar 27 Javascript
微信小程序实现弹幕墙(祝福墙)
Nov 18 Javascript
Vue全家桶入门基础教程
May 14 Vue.js
JQuery EasyUI Layout 在from布局自适应窗口大小的实现方法
May 28 #Javascript
jQuery操作动态生成的内容的方法
May 28 #Javascript
javascript 用函数实现继承详解
May 28 #Javascript
jQuery控制li上下循环滚动插件用法实例(附demo源码下载)
May 28 #Javascript
jQuery实现布局高宽自适应的简单实例
May 28 #Javascript
jquery mobile界面数据刷新的实现方法
May 28 #Javascript
jquery自适应布局的简单实例
May 28 #Javascript
You might like
DC动画很好看?新作烂得令人发指,名叫《红色之子》
2020/04/09 欧美动漫
一篇有意思的技术文章php介绍篇
2010/10/26 PHP
PHP提示Notice: Undefined variable的解决办法
2012/11/24 PHP
php启用zlib压缩文件的配置方法
2013/06/12 PHP
php 类自动载入的方法
2015/06/03 PHP
Apache连接PHP后无法启动问题解决思路
2015/06/18 PHP
php+curl 发送图片处理代码分享
2015/07/09 PHP
PHP中COOKIES使用示例
2015/07/26 PHP
php die()与exit()的区别实例详解
2016/12/03 PHP
Swoole4.4协程抢占式调度器详解
2019/05/23 PHP
JS使用getComputedStyle()方法获取CSS属性值
2014/04/23 Javascript
js实现div层缓慢收缩与展开的方法
2015/05/11 Javascript
JavaScript中toString()方法的使用详解
2015/06/05 Javascript
js实现点击每个li节点,都弹出其文本值及修改
2016/12/15 Javascript
webpack处理 css\less\sass 样式的方法
2017/08/21 Javascript
极简主义法编写JavaScript类
2017/11/02 Javascript
vue-cli安装使用流程步骤详解
2018/11/08 Javascript
微信小程序实现动态显示和隐藏某个控件功能示例
2018/12/14 Javascript
微信小程序 生成携带参数的二维码
2019/10/23 Javascript
three.js显示中文字体与tween应用详析
2021/01/04 Javascript
[59:08]Ti4 冒泡赛第二天 NEWBEE vs Titan 2
2014/07/15 DOTA
pytyon 带有重复的全排列
2013/08/13 Python
Python自定义函数计算给定日期是该年第几天的方法示例
2019/05/30 Python
关于Pytorch的MNIST数据集的预处理详解
2020/01/10 Python
阿玛尼美妆英国官网:Giorgio Armani Beauty英国
2019/03/28 全球购物
巴西24小时在线药房:Droga Raia
2020/05/12 全球购物
Belvilla法国:休闲度假房屋出租
2020/10/03 全球购物
介绍一下Linux文件的记录形式
2012/04/18 面试题
介绍一下Ruby的特点
2013/01/20 面试题
《晏子使楚》教学反思
2014/02/08 职场文书
政府绩效管理实施方案
2014/05/04 职场文书
监督检查工作方案
2014/05/28 职场文书
小学生毕业评语
2014/12/26 职场文书
个人学习总结范文
2015/02/15 职场文书
python 详解turtle画爱心代码
2022/02/15 Python
Java并发编程之原子性-Atomic的使用
2022/03/16 Java/Android