`
terryfeng
  • 浏览: 492805 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

jQuery 的DOM操作方法 元素的创建、复制、重组、修饰

阅读更多

jQuery 的DOM操作方法 元素的创建、复制、重组、修饰。下面的例子完全可用,每一行都写有注释,请复制代码运行。

 

Code
<!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />-->
<!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 id="Head1" runat="server">
    
<title></title>

    
<script src="jquery.js" type="text/javascript"></script>

    
<style type="text/css">
        .chapter
        
{
            width
: 42em;
        
}
        a.link
        
{
            text-decoration
: none;
        
}
        span.footnote
        
{
            font-style
: italic;
            font-family
: "Times New Roman" , Times, serif;
            display
: block; /*使其变成一块一块的*/
            margin
: 1em 0;
        
}
        .text-reference
        
{
            font-weight
: bold;
        
}
        #notes li
        
{
            margin
: 1em 0;
        
}
        #notes
        
{
            margin-top
: 1em;
            border-top
: 1px solid #00ff00;
        
}
        #footer
        
{
            margin-top
: 1em;
            border-top
: 1px solid #dedede; /*上边线*/
        
}
        .inhabitants
        
{
            border-bottom
: 1px solid #dedede;
        
}
        .pulled-wrapper
        
{
            background
: url(pq-top.jpg) no-repeat left top;
            position
: absolute;
            width
: 160px;
            right
: -180px;  /* 定位注释框的横向位置*/
            padding-top
: 18px;
        
}
        .pulled
        
{
            background
: url(pq-bottom.jpg) no-repeat left bottom;
            position
: relative;
            display
: block;
            width
: 140px;
            padding
: 0 10px 24px 10px;
            font
: italic 1.4em "Times New Roman" , Times, serif;
        
}
    
</style>

    
<script type="text/javascript">
        
//为每个p元素添加属性
        $(document).ready(function() {
            $(
'p').each(function(index) {
                
var currentClass = $(this).attr('class');
                $(
this).attr('class', currentClass + ' inhabitants');
            });
        });


        
//动态为元素添加属性
        $(document).ready(function() {
            $(
'div.chapter a[href*=cnblogs]').each(function(index) { //each好似for循环,他会循环集合中所有的对象,参数一的方法是对每一个对象都执行的操作,index是对象的索引
                var $thisLink = $(this);
                $(
this).attr({
                    
'rel''subsection ',
                    
'id''blogslink-' + index,
                    
'title''更多' + $thisLink.text() + '的资料在冯瑞涛的博客',
                    
'class''link'
                });
            });
        });

        
//插入返回到上面连接
        $(document).ready(function() {
            $(
'<a id="top" name="top">新年好</a>').prependTo('body'); //初始化到body

            $(
'div.chapter p:gt(0)').after('<a href="#top">返回到上面</a>');

            
//下行等价上面的哪行代码  gt代表从第几个元素后面的p开始
            //$('<a href="#top">返回到上面</a>').insertAfter('div.chapter p:gt(0)'); 

        });

        
//
        $(document).ready(function() {
            $(
'<ol id="notes"></ol>').insertAfter('div.chapter');
            $(
'span.footnote').each(function(index) {
                $(
this)
                
//为每一个footnote在前面动态添加数字连接(1,2)
                .before('<a href="#foot-note-' + (index + 1+ '" id="context-' + (index + 1+ '" class="context"><sup>' + (index + 1+ '</sup></a>')
                
//将footnote插入到ol标签中(不带上面的连接,仅span),就是移动标签,带有appendTo代表将自己追加到其他元素中
                .appendTo('#notes')
                
// 向指定元素内容的后面追加标签
                .append('&nbsp;(<a href="#context-' + (index + 1+ '">内容</a>)')
                
//将this包含在wrap的第一个参数中表示的标记中
                .wrap('<li id="foot-note-' + (index + 1+ '"></li>');
            });
        });

        $(document).ready(
function() {
            $(
'span.pull-quote').each(function(index) {
            
//获得父元素p
            var $parentParagraph = $(this).parent('p');
                
//设置p标签为相对定位,否则无法对其位置进行操作
                $parentParagraph.css('position''relative'); 
                
//复制一份拷贝,span.pull-quote   clone(false);代表仅复制标记本身不复制其内容
                var $clonedCopy = $(this).clone();
                $clonedCopy
                  .addClass(
'pulled')   //添加样式,拥有下面的背景
                  .find('span.drop')    //找到其中的span.drop,此时对象已经是span.drop了
                  .html('&hellip;')     //为span.drop 设置html文档
                  .end()                //返回没有被改变前的那个jQuery对象状态
                  .prependTo($parentParagraph) //将这个span追加到指定的元素中去
                  .wrap('<div class="pulled-wrapper"></div>'); //再其本身包含在div内容中<div><span>

                
var clonedText = $clonedCopy.text(); //获得文本,去掉了html
                $clonedCopy.html(clonedText);  //将文本以Html的形式插入到内容中,相当于替换html内容
            });
        });

        
        

    
</script>

</head>
<body>
    
<form id="form1" runat="server">
    
<span class="footnote">佳月</span> <span class="footnote">Terry.Feng.C</span> <span
        
class="footnote">冯瑞涛</span>
    
<div class="chapter">
        
<p>
            1. 
<href="http://terryfeng.cnblogs.com">jQuery</a>动态为链接添加属性。</p>
        
<p>
            2. 
<href="http://terryfeng.cnblogs.com">CSLA.Net</a>业务层最强框架。<span class="pull-quote">CSLA注释<span class="drop">省略部分</span></span></p>
        
<p>
            3. 
<href="http://terryfeng.cnblogs.com">DNN</a>免费开源的CMS系统。<span class="pull-quote">DNN注释<span class="drop">省略部分</span></span></p>
    
</div>
    
<div id="footer">
        冯瑞涛的博客
</div>
    
</form>
</body>
</html>
分享到:
评论

相关推荐

    JQuery DoM和ajax 操作

    JQuery DoM和ajax 操作大全源码

    jQuery中DOM树操作之复制元素的方法

    本文实例讲述了jQuery中DOM树操作之复制元素的方法。分享给大家供大家参考。具体分析如下: 复制元素 前面提到的操作包括:插人新创建的元素、将元素从文档中的一个位置移动 到另一个位置,以及通过新元素来包装已有...

    jQuery DOM节点操作源码

    jQuery DOM节点操作源码,适合初学者哦,可以下载下来作为参考资料的。

    jQuery DOM操作小结与实例

    jQuery 的DOM操作方法 元素的创建、复制、重组、修饰,学习jquery dom操作的朋友有福了。

    jQuery DOM 1.pptx

    jQuery 提供一系列与 DOM 相关的方法,这使访问和操作元素和属性变得很容易。 回忆:DOM = Document Object Model(文档对象模型) 1、jQuery获得元素 三个简单实用的用于DOM操作的jQuery方法。 text() //设置或返回...

    jquery学习资料jQuery DOM的操作jQuery插件源码jQuery插件等资料.zip

    jquery学习资料jQuery DOM的操作jQuery插件源码jQuery插件等资料: jQuery DOM教辅.pdf jQuery DOM源码 jQuery DOM的操作.pdf jQuery 丰富的插件.pdf jQuery 事件的处理.pdf jQuery 元素选择器参考手册(教辅) .pdf ...

    gQuery : jQuery DOM 操作部分

    引用 jquery ,只是用一些 DOM 操作函数, 还是觉得 jQuery 的体积有点大,抽取其中常用的 DOM 操作函数,形成了 gQuery,去除空格后,只有不到 4k

    jQuery DOM 2.pptx

    jQuery中的DOM操作(2) jQuery增加元素 jQuery删除元素 1、jQuery增加HTML元素 通过 jQuery,可以很容易地添加新元素/内容。 append() // 在被选元素的结尾插入内容 prepend() //在被选元素的开头插入内容 after() ...

    jQuery Dom元素操作技巧

    DOM操作可以分为三个方面即DOM Core(核心)、HTM-DOM和CSS-DOM。 jquery 获取父节点,兄弟节点,在节点内插入内容。 ①$(#test1).parent() // 父节点 ②$(#test1).next() //下一个节点 ③$(#test1).append('...

    14jQueryDOM节点操作.docx

    开发工具与关键技术:Visual Studio jQueryDOM节点操作相关知识点 创建DOM节点

    jquery DOM操作

    jquery DOM操作,重点介绍DOM这个章节。

    jQuery常见面试题之DOM操作详析

    关于JQ的DOM操作面试问题很多,可以从各个点问,所以列举几个常见问题,毕竟面试只是过程,重要的是知识自己掌握了。 面试题一:JQ中html()、text()和val()区别? 面试题二:JQ中find()、has()和filter()区别? 面试...

    JQuery操作DOM元素

    该文档包含了样式操作,内容及Value属性值操作,节点操作,节点属性操作,节点遍历操作的基础知识,也许不够详细,但内容也应该足够平时操作了,希望能帮到大家

    jquery dom对象 详细介绍1

    jquery 基本 层级 控制器 可见性 属性 子元素 表单对象属性 dom对象 等详细的一些操作~ 详细 简单~易懂 实用!

    jquery对dom的操作常用方法整理

    三个简单实用的用于 DOM 操作的 jQuery 方法: · text() – 设置或返回所选元素的文本内容 · html() – 设置或返回所选元素的内容(包括 HTML 标记) · val() – 设置或返回表单字段的值 2.attr()获取属性。...

    jQuery复制移除表单元素代码.zip

    jQuery复制移除表单元素代码基于jquery.1.7.2.min.js制作,可复制移除相同表单。

    jQuery操作DOM解析

    jQuery操作DOM解析

    JQuery创建DOM节点的方法

    本文实例讲述了JQuery创建DOM节点的方法。分享给大家供大家参考。具体分析如下: 用JQuery选择器能够快捷而轻松地查找到文档中的某个特定的元素节点,然后可以用attr()方法来获取元素的各种属性的值。但真正的DOM...

    jQuery 如何先创建、再修改、后添加DOM元素

    如何一气呵成地,on the fly地操作DOM元素呢? 例如顺序执行【创建】-&gt; 【修改】-&gt; 【添加】三个动作。 由于jQuery支持链式操作,其实就是设计模式的builder模式,所以我们可以把三个操作串在一起来执行。 首先创建...

Global site tag (gtag.js) - Google Analytics