jQuery学习笔记之二

dom操作

查询 dom

利用选择器找到要操作的节点之后,获得节点的值、属性值、文本以及html内容
- a html():html内容
- b text() :文本
- c val():节点的值
- d attr():属性值
此外这几个方法也可以用来修改节点的内容,值,文本内容和属性值

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
<script type = "text/javascript" src = "../js/jquery-1.7.min.js"></script>
<script type = "text/javascript">
    function f1(){
        //innerHTML
        //alert($('#d1').html());
        //文本输出 innerText
        //alert($('#d1').text());
        //alert($('#username:eq(0)').val());
        alert($('#d1').attr('id'));
    }
    function f2(){
        //$('#d1').html('hello java');
        //$('#username').val('jetty');
        $('#d1').attr('style','color:red;font-size:60px;');
    }
</script>
</head>
<body style = "font-size:30px;">
    <div id ="d1"><span>hello jquery</span></div>
    username:<input name = "username" id = "username"/><br/>
    <input type = "button" value = "点击" onclick = "f2();"/>
</body>
</html>
创建 d2.html
插入节点 d2.html
  • append():最后一个孩子追加
  • prepend();第一个孩纸追加
  • after();下一个兄弟 ul下
  • before();前一个兄弟
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
<script type = "text/javascript" src = "../js/jquery-1.7.min.js"></script>
<script type = "text/javascript">
    function f1(){
        var $obj = $('<div>岳飞是一个民族英雄</div>');
        //$('body').append($obj);
        //$('body').prepend($obj);
        //也可以简化
        $('body').append('<div>岳飞是一个民族英雄</div>');
    }
    function f2(){
        //$('ul').after('<div>hello</div>');
        $('ul').before('<div>hello</div>');
    }
</script>
</head>
<body style = "font-size:30px;">
    <a href = "javascript:;" onclick = "f2();">岳飞是谁?</a>
    <br/>
    <ul>
        <li>item1</li>
        <li>item2</li>
        <li>item3</li>
    </ul>
</body>
</html>
删除节点 d3.html
  • remove()
  • remove(selector)
  • empty():清空节点 innerHTML = ”“
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
<script type = "text/javascript" src = "../js/jquery-1.7.min.js"></script>
<script type = "text/javascript">
    function f1(){
        //$('ul li:eq(1)').remove();
        //$('ul li:eq(1)').empty();
        $('ul li').remove('#l2');
    }
</script>
</head>
<body style = "font-size:30px;">
    <ul>
        <li>item1</li>
        <li id = 'l2'>item2</li>
        <li>item3</li>
    </ul>
    <input type = "button" value = "点击" onclick = "f1();"/>
</body>
</html>
如何将js代码与html分开 d4.html

使用如下的结构:

$(function(){
        //这里的js代码会在加载完成之后执行。
    });

数据与样式分离
数据与形式分离

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
<script type = "text/javascript" src = "../js/jquery-1.7.min.js"></script>
<script type = "text/javascript" src = "../js/d4.js"></script>
</head>
<body style = "font-size:30px;">
    <div id = "d1">hello jquery</div>
</body>
</html>

js代码:

window.onload = function(){
        var obj = document.getElementById('d1');
        obj.onclick = function(){
            this.innerHTML = 'hello java';
        };
    };
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
<script type = "text/javascript" src = "../js/jquery-1.7.min.js"></script>
<script type = "text/javascript" src = "../js/d6.js"></script>
</head>
<body style = "font-size:30px;">
    <ul>
        <li>item1</li>
        <li>item2</li>
        <li>item3</li>
    </ul>
    <input type="button" value = "点击" id ="b1" />
</body>
</html>

js代码:

//相当于window.onload = function(){};
    $(function(){
        //页面加载完毕会执行这的代码
        $('#d1').click(function(){
            //相当于
            //var obj = document.getElementById('d1');
            //obj.onclick = function(){
            //this.innerHTML = 'hello java';
            //};
            //this代表绑定了该事件的dom对象
            //this.innerHTML = 'hello java';
            $(this).html('hello java');
        });
    });
复制节点 d6.html
  • clone()
  • clone(true):使复制的节点也具有行为(将事件处理代 码一块复制)
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
<script type = "text/javascript" src = "../js/jquery-1.7.min.js"></script>
<script type = "text/javascript" src = "../js/d6.js"></script>
</head>
<body style = "font-size:30px;">
    <ul>
        <li>item1</li>
        <li>item2</li>
        <li>item3</li>
    </ul>
    <input type="button" value = "点击" id ="b1" />
</body>
</html>

js代码:

$(function(){
        $('ul li:eq(2)').click(function(){
            $(this).css('font-size','60px');
        });
        $('#b1').click(function(){
            var $obj = $('ul li:eq(2)').clone(true);
            $('ul').append($obj);
        });
    });
属性操作

-读取:attr(”);
-设置:attr(”,”);
-设置多个:attr(”,”,”);
-删除:removeAttr(”);
-样式操作:d7.html
-获取和设置:attr(“class”,”“) attr(“style”,”“)
-追加:addClass(”)
-移除:removeClass(”)或者removeClass(‘s1 s2’)或者removeClass()//删除所有样式
-切换样式:toggleClass,有该样式,就删除,没有,就添加
-是否有某个样式hasClass(”)
-读取css(”)
-css({”:”,”:”})设置多个格式

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
<script type = "text/javascript" src = "../js/jquery-1.7.min.js"></script>
<script type = "text/javascript" src = "../js/d7.js"></script>
<style>
    .s1{
    font-size:60px;
    }
    .s2{
    color:red;
    }
    .s3{
    font-style: italic;
    }
</style>
</head>
<body style = "font-size:30px;">
    <div id = "d1" class = "s3">hello jquery</div>
    <input type="button" value = "点击" id ="b1"/>
</body>
</html>

js代码:

$(function(){
        $('#b1').click(function(){
            //$('#d1').attr('class','s1');
            //$('#d1').attr('style','color:red;');
            //$('#d1').removeClass('s1');
            //$('#d1').removeClass();
            //有就删除,没有添加
            //$('#d1').toggleClass('s3');
            alert($('#d1').hasClass('s2'));
        });
    });
遍历节点 d8.html
  • children()/children(selector);只考虑子元素,不考虑其他后代元素
  • next()/next(selector):下一个兄弟
  • prev()/prev(selector):上一个兄弟
  • siblings()/siblings(selector);其他兄弟
  • find(selector);从某一个节点开始查找所有满足选择 条件的后代
  • parent();父节点
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
<script type = "text/javascript" src = "../js/jquery-1.7.min.js"></script>
<script>
    $(function(){
        $('#b1').click(function(){
            //length属性,获得jquery对象包含的dom对象个数
            //var $obj = $('#d1').children('div');//子元素满足选择器要求 p不满足
            //alert($obj.length);
            //$('#d3').next('div').css('font-size','60px');
            //$('#d3').siblings('p').css('font-size','60px');
            //$('#d1').find('div').css('font-size','60px');
            alert($('#d2').parent().attr('id'));
        });
    });
</script>
</head>
<body style = "font-size:30px;">
    <div id ="d1">
        <div id = "d2">hello 1</div>
        <div id = "d3">hello 2</div>
        <div id = "d4">hello 3</div>
        <p>hello 4</p>
    </div>
    <input type="button" value = "点击" id ="b1"/>
</body>
</html>
测试
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
<script type = "text/javascript" src = "../js/jquery-1.7.min.js"></script>
<script type="text/javascript">
    $(function(){
        $('tbody tr:even:not(#b0)').attr('class','s2');
        $('tbody tr:odd').attr('class','s3');
        $('tbody tr:not(#b0)').click(function(){
            $(this).toggleClass('s4');
        });
    });
</script>
<style>
    .s1{
        background-color: gray;
    }
    .s2{
        background-color: purple;
    }
    .s3{
        background-color: orange;
    }
    .s4{
        background-color: white;
    }
</style>
</head>
<body style = "font-size: 30px;">
    <table id = "t1" border ="1" width = "60%" cellpadding ="0" cellspacing="0">
        <thread>
            <tr id = "b0" class = "s1"><td></td><td>姓名</td><td>薪水</td><td>年龄</td></tr>
        </thread>
        <tbody>
            <tr><td id ="b1"><input type = "checkbox" checked = "checked"></td><td>张三</td><td>20000</td><td>23</td></tr>
            <tr><td id ="b2"><input type = "checkbox"></td><td>李四</td><td>22000</td><td>22</td></tr>
            <tr><td id ="b3"><input type = "checkbox" checked = "checked"></td><td>王五</td><td>14000</td><td>26</td></tr>
            <tr><td id ="b4"><input type = "checkbox"></td><td>马六</td><td>15000</td><td>21</td></tr>
        </tbody>
        </table>
</body>
</html>
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
未来社区的建设背景和需求分析指出,随着智能经济、大数据、人工智能、物联网、区块链、云计算等技术的发展,社区服务正朝着数字化、智能化转型。社区服务渠道由分散向统一融合转变,服务内容由通用庞杂向个性化、服务导向转变。未来社区将构建数字化生态,实现数据在线、组织在线、服务在线、产品智能和决策智能,赋能企业创新,同时注重人才培养和科研平台建设。 规划设计方面,未来社区将基于居民需求,打造以服务为中心的社区管理模式。通过统一的服务平台和应用,实现服务内容的整合和优化,提供灵活多样的服务方式,如推送式、订阅式、热点式等。社区将构建数据与应用的良性循环,提高服务效率,同时注重生态优美、绿色低碳、社会和谐,以实现幸福民生和产业发展。 建设运营上,未来社区强调科学规划、以人为本,创新引领、重点突破,统筹推进、整体提升。通过实施院落+社团自治工程,转变政府职能,深化社区自治法制化、信息化,解决社区治理中的重点问题。目标是培养有活力的社会组织,提高社区居民参与度和满意度,实现社区治理服务的制度机制创新。 未来社区的数字化解决方案包括信息发布系统、服务系统和管理系统。信息发布系统涵盖公共服务类和社会化服务类信息,提供政策宣传、家政服务、健康医疗咨询等功能。服务系统功能需求包括办事指南、公共服务、社区工作参与互动等,旨在提高社区服务能力。管理系统功能需求则涉及院落管理、社团管理、社工队伍管理等,以实现社区治理的现代化。 最后,未来社区建设注重整合政府、社会组织、企业等多方资源,以提高社区服务的效率和质量。通过建立社区管理服务综合信息平台,提供社区公共服务、社区社会组织管理服务和社区便民服务,实现管理精简、高效、透明,服务快速、便捷。同时,通过培育和发展社区协会、社团等组织,激发社会化组织活力,为居民提供综合性的咨询和服务,促进社区的和谐发展。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值