jquery鏈接結構的使用

要實現的效果,點擊一個li標簽,當前li標簽的下一個li標簽內的img彈出來,同時,讓其他彈出的img隱藏

image.png
<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <title>jQuery的鏈式操作</title>
    <link rel="stylesheet" type="text/css" href="css/6.css">
    <script src="js/jquery-2.2.4.min.js"></script>
    <script>
        $(function(){
            $("ul").find("li:eq(0)").click(function(){
                $(this).addClass("current") //為當前節點添加current類名的樣式
                .next().fadeIn("slow")      //顯示下一個元素節點
                .parent().siblings().find(".current").removeClass("current")
                                //找到另一個類名為.current的節點,并刪除其類名
                .next().hide(); 
            });

            /*
            current這個類是給li標簽添加亮度的
            代碼思路是,點擊第一個li標簽時,給當前的li標簽添加亮度,讓當前所在的ul的第二個li標簽慢慢彈出;再去找ul標簽里面有彈出的
            代碼解釋
            $("ul").find("li:eq(0)");是找ul標簽里面的第一個li標簽。
            點擊li標簽的時候,
            $(this),代表選中的那個li標簽。
            $(this).addClass("current");給選中的li標簽添加一個current類。
            next()表示下一個li標簽,也就是img外面的li標簽
            fadeIn("slow"); img慢慢彈出
            parent()指的是當前選中的li標簽的parent,此時所在的位置就是ul標簽了
            siblings(),此時指向到了ul標簽的姐妹。
            find(".current"), 找到另一個類名為.current的節點,
            removeClass("current") 找到后移除。此時所在的是li的第一個標簽
            next().hide(),找到它的下一個標簽,隱藏。

            */
        });
    </script>
</head>
<body>
    <div class="containt">
        <ul>
            <li>萌寵:貓</li>
            <li>![](images/01.jpg)</li>
        </ul>
        <ul>
            <li>萌寵:狗</li>
            <li>![](images/02.jpg)</li>
        </ul>
        <ul>
            <li>萌寵:鼠</li>
            <li>![](images/03.jpg)</li>
        </ul>
        <ul>
            <li>萌寵:兔</li>
            <li>![](images/04.jpg)</li>
        </ul>
    </div>
</body>
</html>

image.png
<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <title>jQuery控制頁面css</title>
    <link rel="stylesheet" type="text/css" href="css/13.css">
    <script src="js/jquery-2.2.4.min.js"></script>
    <script>
        $(function(){
            $(".nav li").mouseover(function(){  
                $(this).addClass("current");    //添加一個類名
            }).mouseout(function(){
                $(this).removeClass("current"); //刪除一個類名
            });
        })
    </script>
</head>
<body>
    <div class="nav">
        <ul>
            <li>兄弟連</li>
            <li>兄弟會</li>
            <li>猿代碼</li>
            <li>專家講師</li>
            <li>戰地日記</li>
            <li>小電影</li>
        </ul>
    </div>
</body>
</html>




<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <title>jQuery控制頁面css</title>
    <script src="js/jquery-2.2.4.min.js"></script>
    <script>
        $(function(){
            $("div").css("color","red")         //顏色
            .css("fontSize","30px")             //字體大小
            .css("fontweight","bold")           //字體加粗
            .css("textAlign","center")          //字體居中
            .css("padding","100px");            //內補白
        })
    </script>
</head>
<body>
    <div>讓學習成為一種習慣</div>
</body>
</html>


image.png
<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <title>jQuery對頁面的事件處理</title>
    <link rel="stylesheet" type="text/css" href="css/15.css">
    <script src="js/jquery-2.2.4.min.js"></script>
    <script>
        $(function(){
            var s = ["大師傅","二師兄","小弟弟"];                //主語數組
            var v = ["在冰箱里","夢中女孩","你在夢中"]; //狀語數組
            var o = ["洗澡","唱歌","說話"];                   //動詞數組
            var snum = 0,vnum = 0,onum = 0;                 //數組的偏移量
            var stime = 0,vtime = 0,otime = 0;              //記錄定時器的值
            
            $("button").click(function(){
                stime = setInterval(function(){             //主語開始隨機
                    snum = ++snum%(s.length);
                    $("li:eq(0)").html(s[snum]);
                },100);
                vtime = setInterval(function(){             //狀語開始隨機
                    vnum = ++vnum%(v.length);
                    $("li:eq(1)").html(v[vnum]);
                },100);
                otime = setInterval(function(){             //動詞開始隨機
                    onum = ++onum%(o.length);
                    $("li:eq(2)").html(o[onum]);
                },100);
            });
            $("li").click(function(){           //jQuery對象集合綁定點擊事件
                var name = $(this).attr("class");
                if(name == "0"){
                    clearInterval(stime);                   //主語抽取
                }else if(name == "1"){
                    clearInterval(vtime);                   //狀語抽取
                }else if(name == "2"){
                    clearInterval(otime);                   //動詞抽取
                }
            });
        });
    </script>
</head>
<body>
    <div>
        <h1>點擊對應的文字,即停止滾動</h1>
        <ul>
            <li class="0">123</li>
            <li class="1">123</li>
            <li class="2">123</li>
        </ul>
        <button>開 始</button>
    </div>
</body>
</html>
  • ajax的封裝
<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <title>jQuery 處理頁面動畫效果</title>
    <script src="js/jquery-2.2.4.min.js"></script>
    <script>
        $(function(){
            $.ajax({
                url: "http://localhost:3000/textajax",  //請求地址
                type:"get",                             //請求方式
                dataType:"text",                        //接收數據的格式
                success: function(msg){                 //執行成功的回調函數
                    alert(msg);
                },
                error:function(){                       //執行失敗的回調函數
                    alert("ajax請求錯誤");
                }
            });
        });
    </script>
</head>
<body>
</body>
</html>



/**
    服務器端代碼
*/
app.get("/testajax",function(req,res){
    res.send("你已經學會jQuery了ajax文本");
});



image.png
<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <title>層次選擇器</title>
    <script src="js/jquery-2.2.4.min.js"></script>
    <link href="css/04.css"  rel="stylesheet" type="text/css">
</head>
<body>
    <h1>編程語言排名</h1>
    <ul>
        <li id="one">
            <ul>
                <li>java語言占例:</li>
                <li></li>
            </ul>
        </li>
        <li id="two">
            <ul>
                <li>c語言占例:</li>
                <li></li>
            </ul>
        </li>
        <li id="three">
            <ul>
                <li>c++語言占例:</li>
                <li></li>
            </ul>
        </li>
    </ul>
</body>
</html>
<script>
    /**
        @param
            obj:    jQuery對象
            val:    所占的百分比  
            color:  進度條填充顏色
        
        return      void
    */
    var progress = function(obj,val,color){
        var i = 0;                          //計數器
        var length = 2000;                  //進度條最大長度
        val *= 10;                          //為了體驗感,內部把val值放大十倍
        var flag = setInterval(function(){
            i ++;
            if(i > val){
                clearInterval(flag);  //達到指定的值后,就清除計數
            }else{
                obj.html(i/10+"%").css("background",color).css("width",(i/1000)*length+"px");
            }
        },10);
    };
    /**
        關于"li:eq(index)"它為jQuery基本過濾選擇器(在此提前學習)
            含義為:選取索引等于index的元素(index從0開始)
    */
    progress($("#one ul li:eq(1)"),20,"red");       
    progress($("#one+li ul li:eq(1)"),14,"green");  
    progress($("#two~li ul li:eq(1)"),7,"pink");    
</script>
- 注意,這段js代碼要放在body體后面才可以生效。因為它是改變的原css

內容過濾選擇器 contains(內容)") 感覺這個跟全文索引有點相似

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <title>內容過濾選擇器</title>
    <script src="js/jquery-2.2.4.min.js"></script>
    <link href="css/06.css"  rel="stylesheet" type="text/css">
</head>
<body>
    <h1>電話號碼過濾</h1>
    <input type="text" name="search">
    <div>   
        <button>搜索指定號碼的人員</button>
        <button>查找未錄入號碼的人員</button>
    </div>

    <ul>
        <li>張三:<span>186123123123</span></li>
        <li>李四:<span>186321321321</span></li>
        <li>王五:<span>186132132132</span></li>
        <li>趙六:<span></span></li>
        <li>錢七:<span>186312312312</span></li>
        <li>孫八:<span></span></li>
    </ul>
</body>
</html>
<script>
    //綁定第一個"搜索指定號碼的人員"按鈕    
    $("button:contains(搜索)").click(function(){      
        //使用表單過濾選擇器獲取
        var val = $(":text").val();         

        //首先讓所有待選項全部隱藏
        $("li").css("display","none");

        //顯示被選擇的選項
        $("li:contains("+val+")").css("display","block");
    });

    //綁定第二個"查找未錄入號碼的人員"按鈕
    $("button:contains(查找)").click(function(){
        
        //同上,讓所有待選項全部隱藏
        $("li").css("display","none");

        /**     
            parent方法:取得一個包含著所有匹配元素的唯一父元素的元素集合
        */
        $("span:empty").parent().css("display","block");;   
        
    });
</script>

圖片上第一個翻到最后一個,再從最后這一個翻到第一個

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <title>可見性過濾選擇器</title>
    <script src="js/jquery-2.2.4.min.js"></script>
    <link href="css/07.css"  rel="stylesheet" type="text/css">
</head>
<body>
    <h1>直隱直現的輪播圖</h1>
    ![](images/01.jpg)
    ![](images/02.jpg)
    ![](images/03.jpg)
    ![](images/04.jpg)
</body>
</html>
<script>
var i = 0;                          //定義幀數的變量
var len = $("img").length - 1;      //判斷執行方向
setInterval(function(){
    /**
        next()方法:取得一個包含匹配的元素集合中每一個元素緊鄰的后面同輩元素的元素集合
        
        prev()方法:取得一個包含匹配的元素集合中每一個元素緊鄰的前一個同輩元素的元素集合
    */
    if(i++%(2*len) < len){
        $("img:visible").css("display","none").next().css("display","block");
    }else{
        $("img:visible").css("display","none").prev().css("display","block");
    }
},1000);
</script>

表單對象屬性過濾選擇器

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <title>表單對象屬性過濾選擇器</title>
    <script src="js/jquery-2.2.4.min.js"></script>
    <link href="css/10.css"  rel="stylesheet" type="text/css">
</head>
<body>
    <h1>我的郵箱</h1>
    <ul>
        <li><input type="checkbox" name="email[]" value="1"> 寶龍來信  內容:xxxxxx</li>
        <li><input type="checkbox" name="email[]" value="2"> 萬濤來信  內容:請進入</li>
        <li><input type="checkbox" name="email[]" value="3"> 明霞來信  內容:請雙擊</li>
        <li><input type="checkbox" name="email[]" value="4"> 滔滔來信  內容:保密</li>
    </ul>
    <div>
        <button>全選</button> <button>反選</button> <button>全不選</button>
    </div>
</body>
</html>
<script>
    /**
        prop()方法和attr()方法的功能和用法一樣:
            注意:在jQuery1.6以上,若要檢索和更改DOM屬性時候,使用prop()方法
                比如:checked、selected或disabled等
            原因:隨著一些內置屬性,當刪除屬性時會報錯。
    */
    $("button:contains(全選)").click(function(){
        $("input").prop("checked",true);
    });
    
    $("button:contains(反選)").click(function(){
        var objchecked = $("input:checked");
        $("input:not(:checked)").prop("checked",true);
        objchecked.prop("checked",false);
    });
    $("button:contains(全不選)").click(function(){
        $("input").prop("checked",false);
    });
</script>
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市,隨后出現的幾起案子,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 229,117評論 6 537
  • 序言:濱河連續發生了三起死亡事件,死亡現場離奇詭異,居然都是意外死亡,警方通過查閱死者的電腦和手機,發現死者居然都...
    沈念sama閱讀 98,860評論 3 423
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人,你說我怎么就攤上這事。” “怎么了?”我有些...
    開封第一講書人閱讀 177,128評論 0 381
  • 文/不壞的土叔 我叫張陵,是天一觀的道長。 經常有香客問我,道長,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 63,291評論 1 315
  • 正文 為了忘掉前任,我火速辦了婚禮,結果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己,他們只是感情好,可當我...
    茶點故事閱讀 72,025評論 6 410
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著,像睡著了一般。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發上,一...
    開封第一講書人閱讀 55,421評論 1 324
  • 那天,我揣著相機與錄音,去河邊找鬼。 笑死,一個胖子當著我的面吹牛,可吹牛的內容都是我干的。 我是一名探鬼主播,決...
    沈念sama閱讀 43,477評論 3 444
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 42,642評論 0 289
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后,有當地人在樹林里發現了一具尸體,經...
    沈念sama閱讀 49,177評論 1 335
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 40,970評論 3 356
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發現自己被綠了。 大學時的朋友給我發了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 43,157評論 1 371
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內的尸體忽然破棺而出,到底是詐尸還是另有隱情,我是刑警寧澤,帶...
    沈念sama閱讀 38,717評論 5 362
  • 正文 年R本政府宣布,位于F島的核電站,受9級特大地震影響,放射性物質發生泄漏。R本人自食惡果不足惜,卻給世界環境...
    茶點故事閱讀 44,410評論 3 347
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧,春花似錦、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 34,821評論 0 28
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至,卻和暖如春,著一層夾襖步出監牢的瞬間,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 36,053評論 1 289
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人。 一個月前我還...
    沈念sama閱讀 51,896評論 3 395
  • 正文 我出身青樓,卻偏偏與公主長得像,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 48,157評論 2 375

推薦閱讀更多精彩內容

  • 第一章 入門 基本功能:訪問和操作 dom 元素,控制頁面樣式,對頁面的事件處理,與ajax完美結合,有豐富的插件...
    X_Arts閱讀 1,060評論 0 2
  • 1.JQuery 基礎 改變web開發人員創造搞交互性界面的方式。設計者無需花費時間糾纏JS復雜的高級特性。 1....
    LaBaby_閱讀 1,193評論 0 1
  • 1.JQuery 基礎 改變web開發人員創造搞交互性界面的方式。設計者無需花費時間糾纏JS復雜的高級特性。 1....
    LaBaby_閱讀 1,362評論 0 2
  • 56/100 2017.4.3 1約了hong去百德做蔬菜汁水餃12盒144個 2早餐做3份雞胸肉牛油果卷餅,自己...
    aseeya閱讀 408評論 0 0
  • 大家好!這是我第一次使用簡書寫作,雖然現在不知道要寫些什么,但是我會努力盡量每天都會更新,我是一名幼兒園教師,所以...
    不太會寫作的女孩閱讀 118評論 0 0