一个轻量级的javascript库 pj介绍


Posted in Javascript onDecember 19, 2010

相对于其他语言来说,javascript脚本语言太小巧玲珑了,活泼灵动。个人非常喜欢写javascript代码。虽说网络上出名的javascript库充斥网络,jQuery、Prototype、Base、ExtJs……,功能也非常强大,使用起来也方便。但是有一个不太令人满意的地方,就是库本身太大了。有时只是用其中几个功能就必须得把整个库引进来,就jQuery来说,压缩了也还有70多KB,有时比一个网页文件还大。但我们有需要一个库来协助开发,所以自己就写了一个轻量级的javascript库,只支持一些简单的选择器,其中很多选择器,方法借鉴了jQuery,命名为pj.下载源代码
这里只简单介绍一下
选择器:
pj("#id");//id选择器, 如: pj("#header"),取id为header的元素
pj("tag");//标签 选择器, 如: pj("div"),取页面所有的div
pj("[tag].class");//class选择器, 如: pj("[tag].ClassName"), 取class为ClassName的[tag]元素
pj("#id>tag");//取指定id下的所有指定元素;如: pj("#header>a"), 取id为header元素下的所有a元素[包括子孙元素]
pj("tag>tag");//取指定标签下面所有指定标签的元素;如: pj("li>a") 取页面所有li元素下面的a元素[包括子孙元素]
pj("tag[,#id,tag.class][attr=value]:0,2");//根据指定的属性或者下标取元素;如: pj("div[name=value]:0,3") 取页面中含有name属性并且值为value的第一和第四个元素
pj("<div>");//生成一个div
pj("<div>内容</div>");//生成一个带有内容的div
静态属性和方法
LEFT_POSITION
RIGHT_POSITION
TOP_POSITION
BOTTOM_POSITION
LEFT_TOP_POSITION
LEFT_BOTTOM_POSITION
RIGHT_TOP_POSITION
RIGHT_BOTTOM_POSITION
ready(fn);
extend(target,fn);
bind({method:function(){}})
isObject(elem)
isFunction(elem)
isArray(elem)
isString(elem)
trim(str)
merge(target,src)
getStyle(target,name)
setStyle(target,{})
mouseX(e)
mouseY(e)
stopBubble(e)
stopDefault(e)
pageHeight()
pageWidth()
windowHeight()
windowWidth()
setOpacity(target,value)
enableDrag(trigger,target)
parseToQueryString(form)
isContain(parent,child)
id(id)
tag(tag)
resetCSS(target,{})
x(target)
y(target)
wh(target,name)
pj对象属性和方法
timer
length
get()
each()
addListener()
attr()
removeAttr()
stop()
appendTo()
remove()
addClass()
removeClass()
setClass()
cut()
step()
setLocationRelatedTo()
isVisible()
locate()
bind()
getStyle()
setStyle()
abort()
blur()
change()
click()
dblclick()
error()
focus()
keydown()
keypress()
keyup()
load()
unload()
mousedown()
mousemove()
mouseout()
mouseover()
mouseup()
reset()
resize()
select()
submit()
left()
top()
right()
bottom()
height()
width()
animate()
slideDown()
slideUp()
slideRight()
slideLeft()
scrollDown()
scrollUp()
scrollRight()
scrollLeft()
hide()
show()
fadeIn()
fadeOut()
小演示

<!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=utf-8" /> 
<title>无标题文档</title> 
<style type="text/css"> 
.cmd{ 
width:300px; 
height:150px; 
background:#F9F; 
border:1px solid #9F6; 
} 
</style> 
<script type="text/javascript" src="http://users4.jabry.com/pengju/src/pj-2.1.0.mini.js"></script></head> 
<body> 
<input type="button" value="test" /> 
<div class="cmd"></div> 
<div class="cmd"></div> 
<div></div> 
<script type="text/javascript"> 
pj("div.cmd:1").hide(800,function(){ 
pj("div.cmd:0").hide({duration:400,effect:tween.quint.easeIn}); 
}); 
pj("input").click(function(){ 
pj("<div>").appendTo(document.body).setStyle({position:"absolute",left:"0px",top:"0px",backgroundColor:"green"}).animate({width:200,height:80,left:200,top:240},{duration:1000,effect:{top:tween.bounce.easeOut,left:tween.linear}},function(){this.hide(1000)}); 
}); 
</script> 
</body> 
</html>

打包下载地址 https://3water.com/jiaoben/33561.html
Javascript 相关文章推荐
菜单效果
Oct 14 Javascript
关于hashchangebroker和statehashable的补充文档
Aug 08 Javascript
jQuery UI插件自定义confirm确认框的方法
Mar 20 Javascript
AngularJS ng-change 指令的详解及简单实例
Jul 30 Javascript
BOM系列第三篇之定时器应用(时钟、倒计时、秒表和闹钟)
Aug 17 Javascript
使用重写url机制实现验证码换一张功能
Aug 01 Javascript
vue动态路由实现多级嵌套面包屑的思路与方法
Aug 16 Javascript
jQuery plugin animsition使用小结
Sep 14 jQuery
React实践之Tree组件的使用方法
Sep 30 Javascript
详解Vue项目中出现Loading chunk {n} failed问题的解决方法
Sep 14 Javascript
layui复选框的全选与取消实现方法
Sep 02 Javascript
js仿360开机效果
Dec 26 Javascript
JavaScript Date对象 日期获取函数
Dec 19 #Javascript
jQuery UI Datepicker length为空或不是对象错误的解决方法
Dec 19 #Javascript
jQuery UI Dialog控件中的表单无法正常提交的解决方法
Dec 19 #Javascript
超酷的网页音乐播放器DewPlayer使用方法
Dec 18 #Javascript
有关js的变量作用域和this指针的讨论
Dec 16 #Javascript
关于JavaScript中var声明变量作用域的推断
Dec 16 #Javascript
jquery中动态效果小结
Dec 16 #Javascript
You might like
配置Nginx+PHP的正确思路与过程
2016/05/10 PHP
php实现支持中文的文件下载功能示例
2017/08/30 PHP
XRegExp 0.2: Now With Named Capture
2007/11/30 Javascript
jQuery-ui中自动完成实现方法
2010/06/10 Javascript
js/jQuery对象互转(快速操作dom元素)
2013/02/04 Javascript
jQuery :first选择器使用介绍
2013/08/09 Javascript
没有document.getElementByName方法
2013/08/19 Javascript
利用Keydown事件阻止用户输入实现代码
2014/03/11 Javascript
jquery实现的点击翻书效果代码
2015/11/04 Javascript
JavaScript高级教程5.6之基本包装类型(详细)
2015/11/23 Javascript
Angular中$cacheFactory的作用和用法实例详解
2016/08/19 Javascript
基于jQuery实现咖啡订单管理简单应用
2017/02/10 Javascript
基于bootstrap实现多个下拉框同时搜索功能
2017/07/19 Javascript
JS去掉字符串中所有的逗号
2017/10/18 Javascript
vue2.0之多页面的开发的示例
2018/01/30 Javascript
Vue事件修饰符native、self示例详解
2019/07/09 Javascript
如何实现js拖拽效果及原理解析
2020/05/08 Javascript
[03:17]2016完美“圣”典风云人物:冷冷专访
2016/12/08 DOTA
[01:19]DOTA2城市挑战赛报名开始 开启你的城市传奇
2018/03/23 DOTA
零基础学Python(一)Python环境安装
2014/08/20 Python
Python实现多线程抓取妹子图
2015/08/08 Python
实例讲解Python设计模式编程之工厂方法模式的使用
2016/03/02 Python
Python3.x对JSON的一些操作示例
2017/09/01 Python
Tensorflow之构建自己的图片数据集TFrecords的方法
2018/02/07 Python
python tkinter实现界面切换的示例代码
2019/06/14 Python
将自己的数据集制作成TFRecord格式教程
2020/02/17 Python
彻底搞懂python 迭代器和生成器
2020/09/07 Python
Christys’ Hats官网:英国帽子制造商
2018/11/28 全球购物
档案管理员岗位职责
2013/12/01 职场文书
向领导表决心的话
2014/03/11 职场文书
对公司合理化的建议书
2014/03/12 职场文书
技术支持岗位职责
2015/02/13 职场文书
团队拓展训练心得体会
2016/01/12 职场文书
《植物妈妈有办法》教学反思
2016/02/23 职场文书
2019学校请假条格式及范文
2019/06/25 职场文书
python计算列表元素与乘积详情
2022/08/05 Python