Web实训——0409

本文介绍了jQuery的使用,包括如何加入jQuery库、使用CSS添加样式、常见的事件方法如$(document).ready()和click()。详细讲解了jQuery的选择器,如元素选择器、ID选择器、类选择器等,并展示了如何获取和修改元素内容及属性。此外,文章还详细阐述了jQuery的基础动画操作,如隐藏与显示、滑动效果以及自定义动画animate()方法,最后讨论了jQuery的链式操作和停止动画的方法stop(),并给出了实现二级菜单的示例代码。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Jquery的使用


加入Jquery库文档就绪(需要写一个函数$(document),ready(function({})))
相当于$function(){}
css添加样式:
eg:$(“p”).css('background-color':‘red’)。------只有一个属性的时候
                             ('background-color':'red','','',)。------有多个属性的时候
常用的Jquery事件方法:

 

1.$(document).ready(function(){})
$(document).ready():该方法允许我们在文档加载完成后执行函数
2.click(function(){}):当按钮点击事件被触法时会调用一个函数(也就是执行一个方法)


总结Jquery选择器:


1.元素选择器:基于元素名=名称选取元素
eg:$("p")------所有标签为p的元素
我想获取标签为p的元素的第一个,或者第三个
2.id选择器:通过HTML元素的id属性选取指定的元素
eg:<div id=""></div>
$(#"nav")
3.类选择器:通过指定的class查找元素
eg:<div class="name"></div>
$(."name")
4.继承选择器
5.CSS选择器:用于改变HTML元素的CSS属性
eg:  <P></p>
    $("P").css({'background-color':'red'})
  
其他选择器
1$('*')    :选取所有元素
2$("ul") :选取ul下的li元素
eg:   <ul>
    <li></li> 
    <li></li>
    <li></li> 
        </ul>
$("ul li"):选取ul下的所有的元素
$("ul li:first"):选取ul下的第一个的元素
我们可以通过Jquery选择器选择所有的html元素(

Jquery获取元素的内容和属性(DOM-文档对象模型操作)

1.获取内容:text().html().val()
<div id="text">我叫张三</div>
<input type="button" value="按钮" id="button">
<script>
    var nutton $("button")
    button.click(function(){
        alert("div的内容和为:"+$("#test").text()
    })
</script>
    html():设置或返回所有元素的内容
<div id="test">我叫张三
<p>123</p>
<p>1111111111111111</p>
</div>
<input type="button" value="按钮显示 div的内容" id=button1">
<input type="button" value="按钮html的内容" id=button2">
<script>
    var button1=$("#button1")
    button1.click(function(){
        alert("div的内容和为:"+$("#test").text())
        })
    $("#button2").click(function(){
        alert("html的内容和为:"+$("#test").html())
        })
</script>

$("#test").text()结果为:

 

text():设置或返回元素的文本内容
html():设置或返回所有元素的内容
val():设置或返回表单字段的值0

 

Jquery的基础动画操作


1.Jquery动画效果 隐藏和显示
两个方法:hidden(),show()
语法:
$(selector).hide(speed.callback)
$(selector).hide(speed.callback)
speed规定隐藏和显示的速度,取值为“show”,“fast”,毫秒,
callback参数,是隐藏和显示完成后
两个按钮:通过使用hide()或show()方法来隐藏或显示html
例子:
<p>Jquery动画效果,隐藏和显示。</p>
<input type="button" value="隐藏" id="button1">
<input type="button" value="显示" id="button2">
<input type="button" value="按钮" id="button3">
<script>
        $(document).ready(function(){
            $("#button1").click(function(){
                $("p").hide(1000)
                alert("恭喜你,隐藏完成")
            })
            $("#button2").click(function(){
                $("p").show(2000,function(){
                alert("恭喜你,显示完成")
            })
        })
                $("#button3").click(function(){
                $("p").toggle(1000,function(){
                $("p").css({color:"yellow"})})
                })
        })
    </script>

2.Jquery动画效果 滑动
两个方法:
slidedown(),slideup(),slidetoggle()
例子:
<div id="slide">点击我,滑动显示或者隐藏面板</div>
<div id="panel"> Hello Jquery! !</div>
 <style>
        #slide,#panel{
            padding: 5px;
            text-align: center;
            background-color: #02a1d9;
            border: solid 1px #ff8cb9;
        }
        #panel{
            display: none;
            padding: 40px;
        }
    </style>
    <script>
        $(document).ready(function(){
            $("#slide").click(function(){
                $("#panel").slideToggle()
            })
        })
    </script>

3.animate()方法用于创建自定义的动画
语法:
$(selector).animate({params},speed,callback)必须的params参数定义形成动画的css属性。

可选参数和上面的几个方法相同。


eg:
通过animate()方法操作属性
代码如下:
<button>开始动画</button>
<p>默认情况下,所有的HTML元素有一个静态的位置,且是不可移动的,
如果需要改变,那么需将元素的position属性设置为,absolute,relative,fixed</p>
<div style="background-color:red;height:100px;width: 100px;position: absolute"></div>
<script>
        $(document).ready(function() {
            $("button").click(function () {
                $("div").animate({left: "200px"}, 1000, function () {
                    $("div").css({background: "yellow"})
                })
            })
        })
    </script>

通过animate()操作多个属性
<input type="button" value="开始动画" id="button">
<div style="background-color:red;height:100px;width: 100px;position: absolute"></div>
<script>
        $(document).ready(function() {
            $("#button").click(function () {
                $("div").animate({
                    left: "200px", opacity: "0.5", height: "160px", width: "160px"
                })
            })
        })
    </script>

是否可以用animate()方法来操作所有的css属性???
几乎可以,但需要记住,当使用animate()方法的时候,必须使用camel标记法书写所有的属性名。
eg:css:background-color    在animate中:backgroundColor
animate():使用相对值
<script>
        $(document).ready(function() {
            $("#button").click(function () {
                $("div").animate({
                    left: "200px", opacity: "0.5", height: "+=16px", width: "+=16px"
                })
            })
        })
    </script>

通过animate(),使用队列功能
如果你在彼此之后编写多个animate()调用。Jquery会创建包含这些方法调用的“内部”队列,然后逐一运行这些animate调用
例子:
<input type="button" value="开始动画" id="button">
<div style="background-color:red;height:100px;width: 100px;position: absolute">Hello world</div>
<script>
        $(document).ready(function() {
            $("#button").click(function () {
               var div=$("div")
                div.animate({height:"160px",opacity:0.5},1000)
                div.animate({fontSize:"2em"},100)
                div.animate({width:"160px",opacity:0.9},1000)
                div.animate({height:"100px",opacity:0.5},1000)
                div.animate({width:"100px",opacity:0.9},1000)
                div.animate({fontSize:"10px"},100)
            })
        })
    </script>

Jquery 停止动画: stop()
stop():用于在动画完成前对它进行停止。 暂停队列中的一个动画,如果对列中有多个动画,那么暂停该动画,
然后系统会执行后面的动画
代码如下:
<input type="button" value="开始动画" id="button">
<input type="button" value="暂停动画" id="button1">
<div style="background-color:red;height:100px;width: 100px;position: absolute">Hello world</div>
<script>
        $(document).ready(function() {
            $("#button").click(function () {
               var div=$("div")
                div.animate({height:"160px",opacity:0.5},5000)
            })
            $("#button1").click(function(){
                $("div").stop()
            })
        })
    </script>

Jquery------链(Chaining)
通过Jquery可以把方法链接到一起,Chaining允许我们在一条语句中运行多个Jquery方法(在相同的元素上)
$("#p1").css({'color':"red"}).slideUp(1500).slideDown(1500).animate({backgroundColor:"blue"},1000)
意思:#p1元素首先会变红,然后向上以1.5秒的速度移动,然后向下以1.5秒的速度移动。最后将背景颜色变为蓝色。
如果我们不用链,那么我们的写法:
$("#p1").css({'color':"red"})
$("#p1").slideUp(1500)
$("#p1").slideDown(1500)
$("#p1").animate({backgroundColor:"blue"},1000)


Chaining的优点:
浏览器不用多次去查找相同的元素

 

用Jquery写二级菜单:

 

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <script src="jquery-1.8.3.min.js"></script>
    <style>
 
    .two_bar {
    display:none;
        margin:0 auto;
    }
    li {
    list-style:none;
    }
    .two_bar li,.one_bar {
    display:block;
    text-align:center;
    font-size:16px;
    background-color: #9e3927;
    color: #3ae9ff;
    border-bottom:1px solid #ffffff;
    border-radius:10px;
    line-height:38px;
    overflow:hidden;
    height:38px;
    width:258px;
    }
    a:link,a:visited,a:hover,a:active {
    text-decoration:none;
    }
</style>
    <script>
        $(document).ready(function(){
            $(".one_bar").click(function(){
                $(this).next().slideToggle();
                $(this).parent().siblings().children("ul").slideUp();
            });
        });
    </script>
</head>
<body>
<div class="top_bar">
    <ul>
        <li>
            <a href="###" class="one_bar">首页</a>
            <ul class="two_bar">
                <li>游戏</li>
                <li>娱乐</li>
                <li>体育</li>
            </ul>
        </li>
        <li>
            <a href="###" class="one_bar">导航</a>
        </li>
        <li>
            <a href="###" class="one_bar">关注</a>
        </li>
        <li>
            <a href="###" class="one_bar">榜单</a>
        </li>
    </ul>
</div>
</body>
</html>

 

 

 

 

 

 

 

 

 


 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值