web网页设计实训——5.17

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <script src="jquery-1.8.3.min.js"></script>
    <script>

 //1.在webstorm的相同文件夹下创建 index.html文件、和demo1.txt文件、jquery1.8.3包
     

  $(document).ready(function(){ //入口函数
            $("#div1").mouseover(function(){
                url = "demo1.txt"
                $("#div1").load(url) //ajax加载函数
            })
            $("#div1").mouseout(function(){
                $("#div1").html(" ")
            })
            $("#button1").click(function(){
                url = "demo1.txt"
                $("#div1").load(url)
            })

   //获取id="p1"的元素内容,然后加载到指定的div里面
            $("#button2").click(function(){
                $("#div1").load("demo1.txt #p1")//在文件名后面,拼接一个该元素的id即可
            })
            //在load()方法中callback是可选的参数,callback(回调函数)规定当load方法完成后所需要执行的
            //回调函数。callback回调函数的参数设置:
            // responseTxt:包含回调成功后的返回结果内容(响应类容)
            //statusTxt:回调状态
            //eg: 首先load()方法完成后显示一个提示框,如果load方法执行成功,则显示"外部内容加载成功"
            //如果失败,显示'错误信息'
            //node : 成功 ----"success"   失败-----‘error’
            $("#button3").click(function(){
                $("#div1").load("demo1.txt",function(responseTxt,statusTxt){
                    if(statusTxt =='success'){
                        alert("外部内容加载成功")
                    }
                    if(statusTxt =='error'){
                        alert('错误信息')
                    }
                })
            })

  /*JQuery---AJAX 的get()和post()方法: 主要用于通过HTTP GET 或 POST请求
            * 从服务器里面请求数据。
            * GET: 从指定的资源请求数据,GET基本上用于从服务器获取数据
            * POST: 向指定的资源提交要处理的数据,POST也可以从服务器获取数据,并且
            * 常用于连同请求一起发送数据。不会缓存(cookie)数据。
            * */

 //ajax---> get()方法,  语法: $("selector").get(url,callback)
            // url ---必须参数,   callback----可选参数
            //eg: 使用get()方法从服务器上的一个文件中获取数据
            $("#button4").click(function(){
                jQuery.get("demo.php",function(data,status){
                    alert("数据:"+data+"\n状态:"+status)
                })
            })
            /* $ === JQuery--全局函数

  总结:
            * jquery ajax中的load方法将返回的数据放在指定的元素中,不是全局函数。
            * get()同样是jquery的ajax的函数,它的作用把返回的数据交给用户处理,是全局函数
            *
            * load 的实现几乎等同于get的实现,在ajax获取机制上没有区别。
            * load方法的另一个和get 的重要区别:load可以指定要插入文档的某个部分。
            * */

    //图片轮播

    //方法一: 通过Jquery的新形式实现。        })
 

  </script>
</head><body>
<div id="div1" style="background-color: rgb(204,204,153);
width: 200px;height:400px;overflow: scroll"></div>
<button id="button1">获取外部信息</button>
<button id="button2">获取指定外部信息</button>
<button id="button3">获取外部信息有回调函数</button>
<button id="button4">发送HTTP get请求并获取返回结果</button>


</body>
</html>

//方法二: 通过CSS3的animation属性以及 @keyframes规则实现

            /*首先学习 CSS3当中的@keyframes和animation
            *
            * @keyframes规则---用于创建动画,在@keyframes中规定某个CSS样式,就能创建
            * 由当前样式逐渐变成新样式的动画效果。
            *
            * 浏览器支持:
            *  Internet Explorer 10 (IE10)、Firefox 、Opera 支持 animation属性以及 @keyframes规则
            *
            * chrome、Safari 需要加前缀     "-webkit-"
            * 注: IE9 以及更早的版本,不支持 animation属性以及 @keyframes规则
            *
            *
            * @keyframes 语法:
            *                 @keyframes 函数名(自定义){
            *                          内容
            *                  }
            *eg:
           

 * @keyframes firstAnimation{
            *   from {background: yellow;}
            *   to{ background: red;}
            * }
            *
            * // safari和chrome
            *    @-webkit-keyframes firstAnimation{
            *    from {background: yellow;}
            *    to{ background: red;}
            *    }
            * */

            //CSS3 动画
            /*
            * 用@keyframes规则传创建动画时,需要将其(函数名)绑定到某个选择器,否则不会产生动画效果。
            *
            *
            * */

slide Window(滑动窗口)
 jQuery动画总结:
show(),hide(),toggle(),slideUp(),slideDown(),slideToggle(),animate()

jQuery的淡出淡入

<div>
    <ul>
        <li><a href="#">首页</a></li>
        <li class="navmenu"><a href="#">课程大厅</a>
            <ul>
                <li><a href="#">web网页实战</a></li>
                <li><a href="#">服务端技术</a></li>
                <li><a href="#">Python开发</a></li>
            </ul>
        </li>
        <li class="navmenu"><a href="#">学习中心</a>
            <ul>
                <li><a href="#">视频学习</a></li>
                <li><a href="#">交流学习</a></li>
            </ul>
        </li>
        <li><a href="#">经典案例</a></li>
        <li><a href="#">关于我们</a></li>
    </ul>
</div>
<script type="text/javascript">
        $(function(){
            $(".navmenu").mouseover(function(){
                $(this).children("ul").show();
                //$(this).children("ul").css({display:'block'})
            })
        })
        $(function(){
            $(".navmenu").mouseover(function(){
                $(this).children("ul").hide();
                //$(this).children("ul").css({display:'none'})
            })
        })
    </script>

jQuery尺寸:
px em  (css盒子模型)

width():设置或返回元素的宽度(不包括内边距,边框,外边距)
height():设置或返回元素的宽度(不包括内边距,边框,外边距)

通过jQuery获取元素的宽高:
 

<div id="div1" style="height: 200px;width: 400px;padding: 10px;border: 10px solid red;margin: 1px"></div>
<button>显示div元素的尺寸</button>
<script>
    $(document).ready(function(){
        $('button').click(function(){
            var txt=" "
            txt +="div的宽度是:"+$("#div1").width()+"px"+"<br>"
            txt +="div的长度是:"+$("#div1").height()+"px"+"<br>"
            txt +="div的宽度,包括内边距"+$("#div1").innerWidth()+"px"+"<br>"
            txt +="div的长度,包括内边距"+$("#div1").innerHeight()+"px"+"<br>"
            txt +="div的宽度,包括内边距和边框"+$("#div1").outerWidth()+"px"+"<br>"
            txt +="div的长度,包括内边距和边框"+$("#div1").outerHeight()+"px"+"<br>"
            txt +="div的宽度,包括内边距和外边距"+$("#div1").outerWidth(true)+"px"+"<br>"
            txt +="div的长度,包括内边距和外边距"+$("#div1").outerHeight(true)+"px"+"<br>"
            $("#div1").html(txt)
        })
    })
    </script>

图片动画放大流程说明:
1.首先搭建HTML,分析页面可知,一个大的div里面嵌套一个<img>标签和图片标题,图片标题用<div>包括。
2.搭建css样式
分析样式可知,现在主要有3种样式,p_list,<img>,p_Alt这三种样式。
3.编写jQuery代码
首先,需要获取p_list类,且获取p_list是多个对象数组,我们不知道具体操作哪一个p_list需要用到jQuery当中的each函数来遍历
each():以每一个匹配的元素作为上下文来执行一个函数。相当于,each可以帮助我们获取第一个p_list,然后操作一系列作用
注意:如果你想得到jQuery对象,可以使用$(this)函数
append():向每个匹配的元素内部追加内容
prependTo():把所有匹配的元素前置到另一个。指定的元素元素集合中。
eg:
$("<div class='p_Img'>").append(img),在我们p_Img当中添加img元素。
//相当于
<div class='p_Img'>
<img src="">
</div>
解释:
$(A).append(B):将元素B添加到A当中
$(A).appendTo(B):将A元素添加到B当中
$("<div class='p_Img'>").append(img).prependTo($this)
首先我们通过$("<div class='p_Img'>")创建了一个div:<div class="p_Img'></div>
用于保存改变后的图片。然后,我们通过 $("<div class='p_Img'>").append(img)
将img元素添加到了p_Img当中,相当于:

<div class='p_Img'>
<img src="">
</div>


最后通过.prependTo($this),我们将

<div class='p_Img'>
<img src="">
</div>


添加到p_list当中,相当于

<div class='p_list'>
    <div class='p_Img'>
    <img src=""></div>
</div>

点击放大的动画有哪些
1.首先p_list长宽放大,以及边框放大
2.图片回到正常尺寸
3.p_Alt图片标题出现
4.关闭按钮出现
5.点击放大按钮消失

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值