这篇文章给大家聊聊关于jquery mobile grid,以及jquerymobiledemo对应的知识点,希望对各位有所帮助,不要忘了收藏本站哦。
一、jquery中的$(function(){...})什么时候执行
$(function(){...})函数当DOM(文档对象模型)已经加载,并且页面(包括图像)已经完全呈现时,执行。
此事件等同于jquery的ready()事件的一种语法,完整的三种如下:
简单地说,这个方法纯粹是对向window.load事件注册事件的替代方法。通过使用这个方法,可以在DOM载入就绪能够读取并操纵时立即调用你所绑定的函数,而99.99%的JavaScript函数都需要在那一刻执行。
$(function(){var opName= getUrlParam('opname');// var opName="OP3040";document.getElementById("txtName").value= opName;getplan(opName);getopname(opName);// getplan(opName);connect();getFoucs();InitGrid();});
F5的时候,页面刷新,重新读取DOM节点完成后,自动执行ready()函数里面的函数体。
$('ID')只是选中某个元素,比如你的函数第三行: document.getElementById("txtName")。并没有执行函数的含义。
jQuery的模块可以分为3部分:入口模块、底层支持模块和功能模块。
在构造jQuery对象模块中,如果在调用构造函数jQuery()创建jQuery对象时传入了选择器表达式,则会调用选择器Sizzle(一款纯JavaScript实现的CSS选择器引擎,用于查找与选择器表达式匹配的元素集合)遍历文档,查找与之匹配的DOM元素,并创建一个包含了这些DOM元素引用的jQuery对象。
浏览器功能测试模块提供了针对不同浏览器功能和bug的测试结果,其他模块则基于这些测试结果来解决浏览器之间的兼容性问题。
在底层支持模块中,回调函数列表模块用于增强对回调函数的管理,支持添加、移除、触发、锁定、禁用回调函数等功能;异步队列模块用于解耦异步任务和回调函数,它在回调函数列表的基础上为回调函数增加了状态,并提供了多个回调函数列表,支持传播任意同步或异步回调函数的成功或失败状态。
数据缓存模块用于为DOM元素和Javascript对象附加任意类型的数据;队列模块用于管理一组函数,支持函数的入队和出队操作,并确保函数按顺序执行,它基于数据缓存模块实现。
在功能模块中,事件系统提供了统一的事件绑定、响应、手动触发和移除机制,它并没有将事件直接绑定到DOM元素上,而是基于数据缓存模块来管理事件。
Ajax模块允许从服务器上加载数据,而不用刷新页面,它基于异步队列模块来管理和触发回调函数;动画模块用于向网页中添加动画效果,它基于队列模块来管理和执行动画函数;
属性操作模块用于对HTML属性和DOM属性进行读取、设置和移除操作;DOM遍历模块用于在DoM树中遍历父元素、子元素和兄弟元素。
DOM操作模块用于插入、移除、复制和替换DOM元素;样式操作模块用于获取计算样式或设置内联样式;坐标模块用于读取或设置DOM元素的文档坐标;尺寸模块用于获取DOM元素的高度和宽度。
jQuery是一个快速、简洁的JavaScript框架,是继Prototype之后又一个优秀的JavaScript代码库(或JavaScript框架)。jQuery设计的宗旨是“write Less,Do More”,即倡导写更少的代码,做更多的事情。
它封装JavaScript常用的功能代码,提供一种简便的JavaScript设计模式,优化HTML文档操作、事件处理、动画设计和Ajax交互。
jQuery的核心特性可以总结为:具有独特的链式语法和短小清晰的多功能接口;具有高效灵活的css选择器,并且可对CSS选择器进行扩展;拥有便捷的插件扩展机制和丰富的插件。jQuery兼容各种主流浏览器,如IE 6.0+、FF 1.5+、Safari 2.0+、Opera 9.0+等。
只需要少量的代码,即可将它们集成到网站上,并且能够帮助访问者分享网站上的内容。[12]
JQuery Mobile 1. 2是JQuery运行在手机和平板设备上的版本。JQuery Mobile 1. 2给主流移动平台提供了JQuery的核心库,发布了一个完整统一的JQuery移动UI设计框架,在不同的智能手机和桌面电脑的web浏览器上形成统一的用户UI。
支持全球主流的移动平台,对每个平台的支持分为三个等级:A、B、C,实现了对Android 2.1-2.3、3.2、4.0、4. 1、Palm WebOS 1.4-2.0、3.0、Firefox Mobile 15,Opera Mobile 11.5-12等平台的A级支持。
JQuery Mobile 1. 2的核心使得基本的HTML标签在所有的浏览器中生效,并且对网页的行为和效果均进行了增强,让网页在等级较高的浏览器中能获得优秀的体验,在较差的浏览器中也能正常的使用。
参考资料:百度百科jQuery的工作原理
二、jquery如何封装插件jquery封装插件的方法
如今,jquery几乎是web开发的必备工具。甚至vs神器在2010年就开始在web项目中内置Jquery和ui。至于使用jquery的好处,这里就不赘述了。用过的我都认识。今天我们来讨论一下jquery的插件机制,jquery有上千个第三方插件。有时候我们写了一个独立的函数,想和jquery结合,可以用jquery链调用。有必要扩展jquery,把它写成插件。例如,下面是一个简单扩展jquery对象的演示:
//sample:扩展jquery对象的方法。bold()用于加粗字体。
这是一个非常简单的扩展。接下来,我们来一步步分析上面的代码。
为了方便用户创建插件,jquery提供了jQuery.extend()和jQuery.fn.extend()方法。
1.jQuery.extend()方法有一个重载。
JQuery.extend(object),用于扩展JQuery类本身的参数,也就是说在jQuery类/naming空之间添加新的函数,或者调用静态方法。比如jQuery内置的ajax方法都是用jQuery.ajax()调用的,有点像“类名”的静态方法。方法名”。让我们也写一个jQuery.extend(object)的例子:
//扩展jQuery对象本身jQuery.Extend({"minValue:函数(a,b){///总结/summary
vari=100j=101varmin_v=$。minValue(i,j);//min_v等于100
varmax_v=$。maxValue(i,j);//max_v等于101
重载:jquery.extend([deep],target,object1,[objectn])
用一个或多个其他对象扩展一个对象,并返回扩展的对象。
如果没有指定target,jQuery将被命名为空来扩展自身。这有助于插件作者向jQuery添加新方法。
如果第一个参数设置为true,jQuery返回深度副本,递归地复制它找到的任何对象。否则,副本将与原始对象共享结构。
未定义的属性不会被复制,但从对象原型继承的属性会被复制。
深度:可选。如果设置为true,递归合并。
1:要合并到第一个对象中的对象。
ObjectN:可选。要合并到第一个对象的对象。
合并设置和选项,修改并返回设置。
var设置={validate:false,limit:5,name:foo
varoptions={validate:true,name:酒吧
vardefaults={validate:false,limit:5,name:foo
varoptions={validate:true,name:酒吧
varsettings=jQuery.extend(空,默认,选项);
设置=={验证:真,限制:5,名称:酒吧
原来jQuery.fn=jQuery.prototype,是jQuery对象的原型。那么jQuery.fn.extend()方法就是扩展jQuery对象的原型方法。我们知道在原型上扩展方法相当于给对象增加了一个“成员方法”,而类的“成员方法”只能被类的对象调用,所以使用jQuery.fn.extend(object)扩展的方法,jQuery类的实例就可以使用这个“成员函数”。必须区分jQuery.fn.extend(object)和jQuery.extend(object)方法。
指的是这样一个函数:(function{//code})();
2.问为什么(function{//code})();可以执行,函数{//code}();你会报错吗?
(1).首先明确两者的区别:(function{//code})是表达式,function{//code}是函数声明。
(2).其次,js,因为function(){//code}处于“编译”阶段已经解释过了,js会跳过function(){//code},尝试执行();,所以它会报告一个错误;
js执行到(function{//code})()时;当,因为(function{//code})是表达式,所以js会求解得到返回值。因为返回值是函数,所以遇到();当,它将被执行。
另外,函数转换成表达式的方法不一定要依赖分组运算符(),我们也可以使用void运算符、~operator,!操作员...
bootstrap框架中插件的编写方法:
匿名函数最大的用途是创建闭包(这是JavaScript语言的特点之一),还可以构建命名空空间,减少全局变量的使用。
更多闭包和匿名函数请查看文章匿名函数和Javascript的自执行。
接下来,我们来写一个高亮的jqury插件。
1.设置封闭区域,防止插件“污染”
//闭包限定在named空(function($){
2.jQuery.fn.extend(object)扩展jQuery方法,制作插件。
//闭包限定在named空(function($){
3.给出插件默认参数,实现插件功能。
//闭包限定在named空(function($){
$.fn.extend({突出显示//使用jQuery.extend覆盖插件默认参数。
This.each(function(){//这是jQuery对象。
//遍历所有要高亮显示的dom,当是调用highlight()插件的集合时。
var$this=$(this);//获取当前dom的jQuery对象,这里是当前循环的dom
至此,高亮插件的基本功能已经具备。调用代码如下:
只能在这里直接调用,不能在chain中调用。我们知道jQuery可以被链式调用,也就是说,在一个jQuery对象上可以调用多个方法,比如:
但是我们上面的插件是不能这样链的。比如:$(p100像素});//会报错找不到css方法,因为我的自定义插件完成函数后没有返回jQuery对象。接下来,返回jQuery对象,这样我们的插件也支持链式调用。(其实很简单,就是在我们执行完我们的插件代码的时候返回jQuery对象,和上面的代码没什么区别)
jquery怎么获取inputfile中的内容?
jquery获取inputfile中内容的方法:;$("#conter").val();//这样就能获取它的值了(也就是内容)。
1.jQuery是一个快速、简洁的JavaScript框架,是继Prototype之后又一个优秀的JavaScript代码库。jQuery设计的宗旨是“writeLess,DoMore”,即倡导写更少的代码,做更多的事情。它封装JavaScript常用的功能代码,提供一种简便的JavaScript设计模式,优化HTML文档操作、事件处理、动画设计和Ajax交互。
2.jQuery的核心特性可以总结为:具有独特的链式语法和短小清晰的多功能接口;具有高效灵活的css选择器,并且可对CSS选择器进行扩展;拥有便捷的插件扩展机制和丰富的插件.
1.使用script标签加载jquery框架2.使用script标签加载插件3.看插件是否有api,如果有的话按照api调用4.如果没有api,就自己看源码一般来说jquery插件的调用方法都是$('element').plugName(param);其中element是你用选择选择的要执行插件方法的对象,plugName是你插件中的方法名称,param是插件方法的参数。当然,也有的插件不是这样调用的,也有的插件是需要你在html标签中加入以下class。具体还是要看你用的插件的api
详解如何在vue项目里正确地引用jquery和jquery-ui的插件?
2、在webpack.base.conf.js里加入
在.vue文件中引入第三方非NPM模块
在webpack.base.conf.js中添加externals
externals中swiper是键,对应的值一定的是插件swiper.js所定义的变量Swiper:
之后再在根目录下的index.html文件里引入文件:scriptsrc="static/lib/swiper.js">/script>
这样子就可以在需要用到swiper.js的文件里加入这行代码:importSwiperfrom'swiper',这样就能正常使用了。
lo-dash与underscore.js的api基本一致。与underscore比其优势是,效率高;可自定义构建
Sugar在原生对象上增加一些工具方法
functional.js提够了一些Curry的支持
streamjs用流的方式来对数组,对象进行系列操作
Mock.js生成随机数据和mockAjax请求
ua-parser-js探测具体浏览器和版本,操作系统,设备类型等
console-polyfill能放心的使用console.log()之类的console方法
Konsole.js在页面的一个元素里输出log信息详细
BigDecimal.js提高精度的数字操作
JSDoc根据javascript文件中注释的信息,生成API文档详细
Selectivizr让IE6-8一些的css3选择器
ieBetter让ie6-8有高级浏览器的特性
ExplorerCanvas让IE8-的浏览器支持canvas
CSS3Pie让IE6-9支持border-radious,box-shadow,linear-gradient。可以使用.htc文件(注意Minetype)或.js文件。在用Pie.js时,box-radious的元素有背景色时,不显示背景色。。。
formFive让旧的浏览器支持HTML5表单的一些特性,如placeholder,autofocus
https://github.com/anselmh/object-fit让浏览器支持object-fit这css规则
HTML5CrossBrowserPolyfills一堆Polyfills
flexibility让旧的IE也支持Flexbox
Lining.js让浏览器实现类似::nth-line(),::nth-last-line()的效果
prefixfree用了它,写css时,就不需要加浏览器的前缀了
jquery-file-upload上传文件组件详细
Treed树编辑器。感觉展示的感觉很像思维导图
FileAPI对文件选择框内的文件的一些处理
uniform提供对下拉框,单,复选框,按钮等表单元素的美化
DropKick下拉框,单,多选。外观比uniform好
nouislider用滚动条来设置/控制(音量等)
imagesLoaded选取的图片都加载好后执行调回
CSSgram用CSS3的Filter实现Instagram滤镜的库
HYBICON带交互效果。如hover,click
transformicons图标点击时,会有一些变换效果。如,加号变成叉号
css3patternscss3做的可平铺纹理。浏览器兼容性不好。
fancybox弹出查看图片,视屏等等demo
yoxview弹出查看图片,图片尺寸缩放很自然
WeUI由微信官方设计团队为微信Web开发量身设计。
dragula支持Draggable,Dropable和Sortable。感觉比jqueryUI的轻量级,好用的样子
angular-draguladragular官方的angular版本
highcharts功能强大。是收费的。
Plottable.JS基于D3的一个图表库
chartJs中文文档demo很漂亮,很清晰。比较轻量级。
ichartJs中国的一个家伙搞的,感觉还不错。
fullcalendar支持脱放的方式来改变待办事宜的时间
SimpleEventsCalendar外观很喜欢。收费5$
jQueryuidatepicker经典,不是很好看
pickadate轻量级,手机友好的,漂亮。但貌似只能在弹出层中显示,而没有下拉这种方式显示。
zebra-datepicker可配置性很强。但貌似只能在弹出在右上方。。。
bootstrap-datepickerbootstrap风格。
dateRangePicker选取时间段。bootstrap风格。该组件依赖TwitterBootstrap,Moment.js和jQuery.
perfectscrollbar轻量级的滚动条。外观与mac上chrome的滚动条一样。
backgrid基于Backbone.js的DataGrid
excellentexport把表格的内容生成excel。兼容Firefox,Chrome,IE6+
datatables表格可交互(对内容进行排序,删除等)
handsontable生成Excel外观的数据
ace代码编辑器,可以用来做demo演示
tinymce对html内容进行实时的编辑
html5media简单的h5player,轻量级
Impress.js各种旋转,和奇特的体验
fullPage全屏显示。用滚轮来翻页详细
zepto.fullpage专注于移动端的fullPage.js,依赖Zepto
turn.js做一本书,带漂亮的翻页的效果
slidesjs挺好用的,只是那幻灯导航的CSS都要自己写,呵呵详细
iSlider无任何插件依赖的手机平台javascript滑动组件详细
bgstretcher全屏幻灯,会随着页面大小的变化而变化。
Swiper开源、免费、强大的移动端触摸滑动插件Swiper中文网
coin-slider兼容IE6。蛮好的~。不过其切换方式是一块块的。不能配置切换方式。。。
wowslider幻灯切换时各种很炫的效果。收费。
cycle2普通的幻灯,竟然不支持垂直滚动。。。
jcarousel普通的幻灯,不兼容IE6
nodePPT国人做的,做ppt也相当不错。有些方面比reveal做的还好。但生成导出的html有些问题
roundabout3d切换,看的后面图片的边
Magnific-Popup兼容PC,Mobile。还不错,有5k+的star
layer国人开发的,兼容ie6+。不喜欢其调用方式。
mixitup用漂亮的动画效果来完成排序和筛选
卡片翻转效果2兼容性可以。写的比较简单:1,只支持x方向翻转2,类名都是规定好的3,只能被调用一次。需要改写一下。我的改进版见这里
TheaterJS模拟两个人在屏幕上对话
midnight.js文字颜色随着背景变,_炸了
color-animationjquery的颜色渐变动画插件。jquery的动画不支持颜色值的变化。改库提供了这个支持。
ClickSpark.js点击后的一些酷炫的效果
superscrollorama能做的效果更多,但要用第三方Tween的库,使用
关于jquery mobile grid和jquerymobiledemo的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。