[js高手之路] 我的开源javascript框架gdom - 选择器用法
gdom框架是我开发的一款dom和字符串处理框架,目前版本是1.0.0. 使用方法跟jquery是差不多的, 会用jquery就会用gdom,目前 1.0.0版本的选择器完全支持CSS3选择器.没有做IE的低版本兼容。
gdom下载地址:https://github.com/ghostwu/gdom
gdom选择器有两种写法: G( 选择器 ) 和 $( 选择器 )
gdom的加载: G( function(){} ) $( function() {} );
公用css文件: common.css
* {
margin:;
padding:;
}
ul,li {
list-style-type:none;
}
div,p {
padding: 10px;
margin: 10px;
border: 1px solid #ccc;
}
a {
text-decoration: none;
}
加载库文件与css文件( 请根据实际情况调整路径加载):
<script src="../lib/gdom1.0.0.js"></script>
<link rel="stylesheet" href="../css/common.css">
下面列举部分常见的用法:
1、基本选择器( id, class, 元素 )
html代码:
<div id="box">test is a test</div>
<div class="box">this is a test</div>
<div class="box">this is a test</div>
<div>this is a test</div>
javascript代码:
<script>
G(function(){
// $("#box").css( "border", "1px solid #09f" );
// $(".box").css( "border", "1px solid #09f" );
G("div").css( "border", "1px solid #09f" );
});
</script>
2、后代,子代选择器
html代码
<div id="box">
<p>gdom是一个dom处理和字符串处理的框架,作者:ghostwu</p>
<p>gdom是一个dom处理和字符串处理的框架,作者:ghostwu</p>
<p>gdom是一个dom处理和字符串处理的框架,作者:ghostwu</p>
</div>
<p>gdom是一个dom处理和字符串处理的框架,作者:ghostwu</p>
<p>gdom是一个dom处理和字符串处理的框架,作者:ghostwu</p>
javascript代码
<script>
G(function(){
G("body p").css( "border", "2px solid #09f" );
// G("body > p").css( "border", "2px solid #09f" );
});
</script>
3、属性选择器
html代码
<div id="box">gdom是一个dom处理和字符串处理的框架,作者:ghostwu</div>
<div id="box2" class="desc">gdom是一个dom处理和字符串处理的框架,作者:ghostwu</div>
<div id="box2" class="desc" data-target="abc">gdom是一个dom处理和字符串处理的框架,作者:ghostwu</div>
<div id="box2" class="desc1 desc2 desc3" data-target="abc">gdom是一个dom处理和字符串处理的框架,作者:ghostwu</div>
javascript代码
<script>
G(function(){
// G( "[id]" ).css( "border", "1px solid #09f" );
// G( "[id][class]" ).css( "border", "1px solid #09f" );
// G( "[data-target]" ).css( "border", "1px solid #09f" );
// G( "[class*=desc]" ).css( "border", "1px solid #09f" );
// G( "[class^=desc]" ).css( "border", "1px solid #09f" );
G( "[class$=desc]" ).css( "border", "1px solid #09f" );
});
</script>
4、过滤选择器
javascript代码
<script>
G(function(){
// G( "div:nth-child(1)").css( "border", "1px solid #09f" );
// G( "div:nth-of-type(1)").css( "border", "1px solid #09f" );
G( "div p:nth-of-type(1)" ).css( "border", "1px solid #09f" );
});
</script>
html代码
<p>gdom是一个dom处理和字符串处理的框架,作者:ghostwu</p>
<div>
<p>gdom是一个dom处理和字符串处理的框架,作者:ghostwu</p>
<p>gdom是一个dom处理和字符串处理的框架,作者:ghostwu</p>
</div>
<div>
<p>gdom是一个dom处理和字符串处理的框架,作者:ghostwu</p>
<p>gdom是一个dom处理和字符串处理的框架,作者:ghostwu</p>
</div>
<div>
<p>gdom是一个dom处理和字符串处理的框架,作者:ghostwu</p>
<p>gdom是一个dom处理和字符串处理的框架,作者:ghostwu</p>
</div>
[js高手之路] 我的开源javascript框架gdom - 选择器用法的更多相关文章
- [js高手之路]打造通用的匀速运动框架
本文,是接着上文[js高手之路]匀速运动与实例实战(侧边栏,淡入淡出)继续的,在这篇文章的最后,我们做了2个小实例:侧边栏与改变透明度的淡入淡出效果,本文我们把上文的animate函数,继续改造,让变 ...
- [js高手之路]从零开始打造一个javascript开源框架gdom与插件开发免费视频教程连载中
百度网盘下载地址:https://pan.baidu.com/s/1kULNXOF 优酷土豆观看地址:http://v.youku.com/v_show/id_XMzAwNTY2MTE0MA==.ht ...
- [js高手之路]一步步图解javascript的原型(prototype)对象,原型链
我们接着上文继续,我们通过原型方式,解决了多个实例的方法共享问题,接下来,我们就来搞清楚原型(prototype),原型链的来龙去脉. function CreateObj(uName) { this ...
- [js高手之路]Node.js实现简易的爬虫-抓取博客文章列表信息
抓取目标:就是我自己的博客:http://www.cnblogs.com/ghostwu/ 需要实现的功能: 抓取文章标题,超链接,文章摘要,发布时间 需要用到的库: node.js自带的http库 ...
- [js高手之路]Node.js实现简易的爬虫-抓取博客所有文章列表信息
抓取目标:就是我自己的博客:http://www.cnblogs.com/ghostwu/ 需要实现的功能: 抓取博客所有的文章标题,超链接,文章摘要,发布时间 需要用到的库: node.js自带的h ...
- [js高手之路]从原型链开始图解继承到组合继承的产生
基于javascript原型链的层层递进查找规则,以及原型对象(prototype)的共享特性,实现继承是非常简单的事情 一.把父类的实例对象赋给子类的原型对象(prototype),可以实现继承 f ...
- [js高手之路]原型对象(prototype)与原型链相关属性与方法详解
一,instanceof: instanceof检测左侧的__proto__原型链上,是否存在右侧的prototype原型. 我在之前的两篇文章 [js高手之路]构造函数的基本特性与优缺点 [js高手 ...
- [js高手之路]封装运动框架实战左右与上下滑动的焦点轮播图
在这篇文章[js高手之路]打造通用的匀速运动框架中,封装了一个匀速运动框架,我们在这个框架的基础之上,加上缓冲运动效果,然后用运动框架来做幻灯片(上下,左右),效果如下: 1 2 3 4 5 // 0 ...
- [js高手之路]面向对象版本匀速运动框架
这篇文章的效果,需要看过以下3篇文章: [js插件开发教程]一步步开发一个可以定制配置的隔行变色小插件 [js高手之路]匀速运动与实例实战(侧边栏,淡入淡出) [js高手之路]打造通用的匀速运动框架 ...
随机推荐
- 计算器的单元测试dome
通过上一篇文章,Appium环境已经搭建好了,下面我们通过Python脚本来测试原生的计算器程序 --------------------------------------------------- ...
- spring 4 升级踩雷指南
spring 4 升级踩雷指南 前言 最近,一直在为公司老项目做核心库升级工作.本来只是想升级一下 JDK8 ,却因为兼容性问题而不得不升级一些其他的库,而其他库本身依赖的一些库可能也要同步升级.这是 ...
- Linux中如何恢复rm命令误删除的文件之extundelete编译安装及使用
1.下载extundelete包,安装依赖 我用的是Centos系统,在安装extundelete之前需要安装e2fsprogs,e2fsprogs-libs,e2fsprogs-devel. yum ...
- FiddlerCoreAPI开发(一)源码分析
1.前言 前一段时间想利用fiddlercore截取本地HTTPS的流量做一些分析,按照样例代码的注释学习了一下,没搞清楚怎么实现,后来又在网上查了些资料,对HTTPS的处理提及很少,都没有解决我的问 ...
- ajax请求处理和views处理函数的优先级
当采用ajax处理请求的时候,在views函数中使用 return render(request,'XXX.html',{'error':form.get_error()}) 返回渲染模板时,会优先处 ...
- 进程组与会话 Linux Process Groups and Sessions
在类Unix系统中,用户通常会跟各种相关的进程打交道.虽然在登录的时候只有一个终端进程(用户对应的登录shell ,通过这个shell启动各种程序和服务),但通常不久以后就会产生许多相关的进程,例如进 ...
- iOS有关图片处理的总结 (四)------图片的饱和度,亮度,对照度。
在做图片处理的时候.会遇到调节图片的饱和度的问题,这里就要用到Core Image这个框架,Core Image是一个非常强大的框架. 它能够让你简单地应用各种滤镜来处理图像,比方改动鲜艳程度, 色泽 ...
- Effective Java 第三版——6. 避免创建不必要的对象
Tips <Effective Java, Third Edition>一书英文版已经出版,这本书的第二版想必很多人都读过,号称Java四大名著之一,不过第二版2009年出版,到现在已经将 ...
- C#winform向Txt文件传值,不重复录入且不清空
private void textLog_TextChanged(object sender, EventArgs e) { FileStream fs = new FileStream(@" ...
- 工作随笔——spring异步处理@Async使用笔记
@Async使用笔记 必须是public方法 必须是非static方法 方法调用的实例必须由spring创建和管理 代码示例如下: // 创建Foo类@Component class Foo { @A ...