Ⅰ jquery源码 ,jquery选择器,javascript,正则表达式
quickExpr应该是个二义正则。前半段是:
^[^<]*(<[\w\W]+>)[^>]*$:我猜测意思是一个简单的标签。如$('<div>new Div</div>')匹配的用法。
后半段是:
^#([\w-]+)$:这个显然就是id选择器。->getElementById
注意两个正则用了|来分隔二义,所以你这里的匹配不成功是正常的。
jquery应该是根据这个quickExpr来判断
if(match[1]) createNewfragment();....
else if(match[2]) getElementById();
当然这只是个人猜测,没有细读jquery源码。仅做参考
Ⅱ 如何正确阅读jquery源码和jquery插件源码
1. jQuery 里面有很多东西是出于兼容性,历史遗留。
比如 .ready() 之类的函数,为什么会很scroll 有关,那是为了兼容某些ie。这种代码对于编程思想来说不仅没用,而且是杂音,你要筛选出来就得了解这段代码的变动,费心费力得不偿失。
2. jQuery 里面的代码不一定是最优的,例如事件委托,每一次事件触发都要调用选择器,实际上是效率很低的。但是我又比较懒,没有提交patch。
3. jQuery 实际上很容易写出来一个 barebone alternative,在使用的过程中多想,多思考多总结就可以了。
4. jQuery 这类框架里真正有思维挑战性的东西不多,一半以上是堆代码而已,剩下的一点价值在于架构、抽象、扩展能力。
5. 我有一句话与所有的同行分享:工程师让需求成为现实,优秀工程师化复杂为简单,顶尖工程师变不可能为可能;架构师掌握现在,优秀架构师展望未来,顶尖架构师创造时代。
jQuery 的设计目的是,让前端工程师的工作更简单更轻松,但它并不适合所有的前端工程师,假如你的目标是成为优秀架构师、顶尖架构师的话,你在jQuery里也看不清未来。
Ⅲ 简单易懂的jQuery导航(三级菜单)源码
<!--三级操蛋导航-->
<divclass="nav_left">
<divclass="nav_leftlist">
<h2><b></b>用户系统</h2>
<dl>
<dt><b></b>用户管理</dt>
<dd>
<aclass="cur"href="">商户信息<b></b></a>
<ahref="">用户信息<b></b></a>
</dd>
</dl>
</div>
<divclass="nav_leftlist">
<h2><b></b>财务系统</h2>
<dl>
<dt><b></b>系统账务</dt>
<dd>
<ahref="">平台账单<b></b></a>
<ahref="">账单明细<b></b></a>
</dd>
</dl>
<dl>
<dt><b></b>商户账务</dt>
<dd>
<ahref="">商户账单<b></b></a>
<ahref="">提现管理<b></b></a>
</dd>
</dl>
<dl>
<dt><b></b>用户账务</dt>
<dd>
<ahref="">用户账单<b></b></a>
<ahref="">提现管理<b></b></a>
</dd>
</dl>
</div>
</div>
<style>
.nav_left{background:#232b35;height:100%;width:220px;min-height:600px;position:fixed;top:100px;left:0;}
.nav_leftlist{}
.nav_leftlisth2{height:50px;line-height:50px;padding-left:40px;font-size:16px;background:#3b444f;color:#999999;position:relative;cursor:pointer;}
.nav_leftlisth2b{position:absolute;top:20px;left:13px;width:16px;height:9px;background:url(../images/icon04.png)no-repeat;background-position:00;cursor:pointer;}
.nav_leftlisth2b.cur{background-position:-16px0;}
.nav_leftlistdl{}
.nav_leftlistdldt{height:50px;line-height:50px;background:#2c3643;font-size:16px;color:#ffffff;padding-left:60px;position:relative;cursor:pointer;}
.nav_leftlistdldtb{position:absolute;top:20px;left:34px;width:16px;height:9px;background:url(../images/icon04.png)no-repeat;background-position:0-10px;}
.nav_leftlistdldtb.cur{background-position:-16px-10px;}
.nav_leftlistdldd{}
.nav_leftlistdldda{display:block;height:50px;line-height:50px;color:#fff;padding-left:80px;font-size:16px;position:relative;}
.nav_leftlistdldda.cur{color:#ee581c;}
.nav_leftlistdldda.curb{display:block;position:absolute;top:16px;right:-1px;width:11px;height:18px;background:url(../images/icon04.png)no-repeat;background-position:0-20px;}
</style>
</body>
<scripttype="text/javascript"src="../js/jquery.js"></script>
<scripttype="text/javascript">
$(function(){
$('.nav_leftlist').on('click','h2',function(event){
$(this).siblings('dl').toggle();
if($(this).siblings('dl').css('display')=='none'){
$(this).find('b').addClass('cur');
}else{
$(this).find('b').removeClass('cur');
}
});
$('.nav_leftlist').on('click','dldt',function(event){
$(this).siblings('dd').toggle();
if($(this).siblings('dd').css('display')=='none'){
$(this).find('b').addClass('cur');
}else{
$(this).find('b').removeClass('cur');
}
});
})
</script>
效果图:
Ⅳ 求 《jQueryUI开发指南》的源代码
ExtJS适合使用在内部网络,例如mes系统,内部办公系统之类的
JQuery适合使用在对外的网络,例如企业的门户网站,对外的报名系统之类的
说白了 extjs较大,jquery较小,一个适合大带宽,一个适合小带宽
至于easy UI 舍弃 不考虑
Ⅳ 求一个源码jquery json 例子
1.获取DataSet
2.转成DataTable
3.
public static string DataTableToJson(DataTable dt)
{
StringBuilder jsonBuilder = new StringBuilder();
//jsonBuilder.Append("{"); //输出的要求不要'}'
//jsonBuilder.Append(dt.TableName);
jsonBuilder.Append("[");
for (int i = 0; i < dt.Rows.Count; i++)
{
jsonBuilder.Append("{");
for (int j = 0; j < dt.Columns.Count; j++)
{
jsonBuilder.Append("\"");
jsonBuilder.Append(dt.Columns[j].ColumnName);
jsonBuilder.Append("\":\"");
jsonBuilder.Append(dt.Rows[i][j].ToString());
jsonBuilder.Append("\",");
}
jsonBuilder.Remove(jsonBuilder.Length - 1, 1);
jsonBuilder.Append("},");
}
jsonBuilder.Remove(jsonBuilder.Length - 1, 1);
jsonBuilder.Append("]");
//jsonBuilder.Append("}"); //输出的要求不要'}'
return jsonBuilder.ToString();
}
4.把Json字串Response出来
5.获取Json字串
function load() //页面加载
{
$.ajax({
type:"post",
url:"../Handler/LinkManHandler.ashx",//从哪获取Json
data:"action=getLinkMan&id="+comId,//Ajax传递的参数
beforeSend:function(){
//获取之前显示 loading 或 正在加载
},
success:function(mess)
{
$("#divImage").hide();
if(mess!="]")// 如果获取的数据不为空
{
var type=eval(mess);
var str="<a>首页</a>"
for(var i=0;i<type.length;i++)
{
//操作type 获取东西
str+="<a>"+type[i].数据库字段名+"</a>
}
$("#divLinkMan").html(str);//把str嵌入div divLinkMan 中
}
else
{
var notfind="<h2>未找到数据<a href='../Main.htm' target='_parent'>返回</a></h2>"
$("#divLinkMan").html(notfind);
}
},
complete:function()
{
//所有的都执行完后的方法
}
});
}
Ⅵ 基于jquery实现的tab选项卡功能示例【附源码下载】
本文实例讲述了基于jquery实现的tab选项卡功能。分享给大家供大家参考,具体如下:
jquery这款杀手级别的js框架,显然已成了开发界的标准js库,在开发一般web应用的时候,常常用到。今天找到一个实现jquery
tab页的插件,效果还不错,比自己用javascript和css去实现一个tab页好多了。用
tab
页美化界面,对于用户体验来说是显而易见,让各种不同类型的数据分布在不同的tab页中。很直观,也避免了很多数据现在在一个界面中,显得很臃肿,看上去就怕。这一款基于jquery
的tab
页插件名字叫:billy.carousel.
先看看效果图
看上去效果还不错吧。
下面看jquery
tab
的html页面代码吧
<!DOCTYPE
html>
<head>
<meta
http-equiv="Content-Type"
content="text/html;
charset=utf-8"
/>
<meta
name="description"
content="jQuery实现的tab选项卡式图片切换效果"
/>
<title>jQuery实现的tab选项卡式图片切换效果</title>
<!--
JS
Includes
-->
<script
src="images/jquery.js"
type="text/javascript"></script>
<script
src="images/billy.carousel.jquery.min.js"
type="text/javascript"></script>
<!--
CSS
Includes
-->
<link
rel="stylesheet"
href="images/demonstration.css"
rel="external
nofollow"
type="text/css"
media="screen"
/>
<title>tab选项测试</title>
</head>
<body>
<script
type="text/javascript">
$(document).ready(
function()
{
$('#tabber').billy({
slidePause:
5000,
indicators:
$('ul#tabber_tabs'),
customIndicators:
true,
autoAnimate:
false,
noAnimation:
true
});
});
</script>
<div
id="container"
>
<h3>Jquery
Tab
选项卡测试</h3>
<p>点击tab页切换</p>
<!--
The
Tabs
标题
-->
<ul
id="tabber_tabs">
<li><a
href="#0"
rel="external
nofollow"
>Tab
One</a></li>
<li><a
href="#1"
rel="external
nofollow"
>Tab
Two</a></li>
<li><a
href="#2"
rel="external
nofollow"
>Tab
Three</a></li>
<li><a
href="#3"
rel="external
nofollow"
>Tab
Four</a></li>
</ul>
<!--
Tabbed
内容区
-->
<div
id="tabber_clip">
<ul
id="tabber">
<li><img
src="images/desert.jpg"
width="900"
height="400"
alt="Desert"></li>
<li>
<br
/>
我想有一座房子,面朝大海,春暖花开....
</li>
<li><img
src="images/wood.jpg"
width="900"
height="400"
alt="Wood"></li>
<li><img
src="images/pond.jpg"
width="900"
height="400"
alt="Pond"></li>
</ul>
</div>
</div>
</body>
</html>
在<head>中引入相关的jquery文件之后,按照上面的例子,就可以做出tab页面的样式了,非常简单了。如果需要调整样式,可以修改css.
代码点击此处本站下载。
更多关于jQuery相关内容感兴趣的读者可查看本站专题:《jQuery页面元素操作技巧汇总》、《jQuery常见事件用法与技巧总结》、《jQuery常用插件及用法总结》、《jQuery扩展技巧总结》及《jquery选择器用法总结》
希望本文所述对大家jQuery程序设计有所帮助。
您可能感兴趣的文章:基于JQuery的6个Tab选项卡插件JQuery
Tab选项卡效果代码改进版jQuery实现TAB选项卡切换特效简单演示jQuery实现Tab选项卡切换效果简单演示jquery实现超简洁的TAB选项卡效果代码jQuery实现滚动切换的tab选项卡效果代码jQuery实现移动端Tab选项卡效果jQuery封装的tab选项卡插件分享jquery实现tab选项卡切换效果(悬停、下方横线动画位移)动感效果的TAB选项卡jquery
插件
Ⅶ 给我一个jquery源代码,不要文件,就是源代码
你要什么效果的源代码啊。。。
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>无标题文档</title>
<script type="text/javascript" src="jquery-1.7.1.min.js"></script>
<script type="text/javascript">
$(document).ready(function(e) {
$('.nyroModal').css("background-color","red");
});
</script>
</head>
<body>
<a href="demoSent.php" class="nyroModal" rev="modal">Ajax without closing</a>
</body>
</html>
Ⅷ jQuery实现的导航动画效果(附demo源码)
本文实例讲述了jQuery实现的导航动画效果。分享给大家供大家参考,具体如下:
经常在网上看到的,鼠标在导航上移动时,导航底部的横条会自动移动到鼠标悬浮的导航项上。
效果如下图:
利用jquery的
animate
函数,很好实现。代码很简单!
代码如下:
<!DOCTYPE
html>
<html>
<head>
<meta
charset="utf-8">
<title>测试</title>
<script
src="jquery-1.9.1.min.js"></script>
</head>
<body>
<div
class="nav"
style="margin:
100px
auto;
width:960px;">
<a
class="active"
href="#">首页</a>
<a
href="#">产品</a>
<a
href="#">新闻中心</a>
<a
href="#">关于我们</a>
<a
href="#">联系我们</a>
<a
href="#">首页</a>
<a
href="#">首页</a>
<div
class="line"></div>
</div>
<style>
.nav{
position:relative;
}
.nav
a{
padding:10px
20px;
border-bottom:solid
3px
#fff;
text-decoration:
none;
color:#666;
}
.nav
a:hover{
color:#66f;
}
.nav
.active,
.nav
.active:hover{
color:#f33;
}
.nav
.line{
position:absolute;
border-top:solid
2px
red;
width:0;
left:0;
top:0;
}
</style>
<script>
function
navLine(o,
bo)
{
var
x
=
''
+
(o.position().top
+
o.outerHeight()
-
2)
+
'px';
var
y
=
''
+
o.position().left
+
'px';
var
w
=
''
+
o.outerWidth()
+
'px';
var
h
=
'2px';
$('.nav
.line').stop();
if
(bo)
{
$('.nav
.line').css({width:w,
height:h,
top:x,
left:y});
}
else
{
$('.nav
.line').animate({width:w,
height:h,
top:x,
left:y});
}
}
$(function(){
navLine($('.nav
.active'),
true);
$('.nav
a').hover(function(){
navLine($(this));
},
function(){
navLine($('.nav
.active'));
});
});
</script>
</body>
</html>
完整实例代码点击此处本站下载。
更多关于jQuery相关内容感兴趣的读者可查看本站专题:《jQuery拖拽特效与技巧总结》、《jQuery扩展技巧总结》、《jQuery常见经典特效汇总》、《jQuery动画与特效用法总结》、《jquery选择器用法总结》及《jQuery常用插件及用法总结》
希望本文所述对大家jQuery程序设计有所帮助。
Ⅸ jquery each()源代码
复制代码
代码如下:
//
args
is
for
internal
usage
only
each:
function(
object,
callback,
args
)
{
var
name,
i
=
0,
length
=
object.length,
isObj
=
length
===
undefined
||
jQuery.isFunction(object);
if
(
args
)
{
if
(
isObj
)
{
for
(
name
in
object
)
{
if
(
callback.apply(
object[
name
],
args
)
===
false
)
{
break;
}
}
}
else
{
for
(
;
i
<
length;
)
{
if
(
callback.apply(
object[
i++
],
args
)
===
false
)
{
break;
}
}
}
//
A
special,
fast,
case
for
the
most
common
use
of
each
}
else
{
if
(
isObj
)
{
for
(
name
in
object
)
{
if
(
callback.call(
object[
name
],
name,
object[
name
]
)
===
false
)
{
break;
}
}
}
else
{
for
(
var
value
=
object[0];
i
<
length
&&
callback.call(
value,
i,
value
)
!==
false;
value
=
object[++i]
)
{}
}
}
return
object;
},
分析:jquery文档说
each(callback)作用是以每一个匹配的元素作为上下文来执行一个函数。就是用each来遍历数组,来执行同一个方法
这个方法的实现最关键的是:call与apply的用法:call(apply)就是将函数的对象的从初始的上下文改为thisObj指向的对象,
就是说用thisObj来代替原来的对象来执行方法:call与apply的第一个参数为this指向的对象,而后面的参数都下传给函数的,
call传给函数的参数用逗号分隔而apply则为一个数组。
//1.callback.apply(
object[
name
],
args
)
//2.callback.call(
object[
name
],
name,
object[
name
]
)
Ⅹ jQuery 源代码看不懂,怎么办。。有没有解释jQuery 源代码的书籍
要不要阅读别人代码?
要。
阅读别人代码干什么?
提高自己的代码质量。
试图通过阅读别人代码找出代码的逻辑?
错误。
试图通过阅读别人代码找出想要实现自己的逻辑的代码?
正确,只有遵循了这个原则,才能实现物为我所用。
毫无目的去看别人代码 不晕才怪呢。