jsGears.com 技術論壇 - AJAX, JavaScript, jQuery, 網站開發, 前端效能優化's Archiver

baseball 發表於 2009-12-7 21:50

$('div.tabBlock', container).hide().eq(0).show(); 該如何解釋

您好:
請問 以下片段程式中,
                 [color=Magenta]   $('div.tabBlock', container).hide().eq(0).show();[/color]
這該如何解釋,
  $('div.tabBlock', container) 示只2個selector 嗎?
這2個都做同樣的動作嗎?
謝謝!
                var _handler = function() {
                    var container = this; // 加入這行,並將以下表示 div#mytab 的 this 改為 container
                    //container 的div.tabBlock,先影藏        ,再將第一個顯示出來
                 [color=Magenta]   $('div.tabBlock', container).hide().eq(0).show();[/color]
                    $('div.tabs li a', container).click(function () {
                        $('div.tabs li', container).removeClass('active');
                        $(this).parent('li').toggleClass('active'); // 這個 this 不用動,它表示 a 元素
                        
                           $('div.tabBlock', container).hide(); // 先全部藏起來
                        var id = (String(this.href).match(/(#.+)$/))[1]; // 只抓對應的 tabBlock id
                           $(id).show(); // 顯示對應的 tabBlock
                               
                        return false;
                    });
                };

wmh 發表於 2009-12-7 22:09

[code js]jQuery(expression, context)[/code]
這是找 context 裡面符合 expression 的元素。

你那一段有註解,再寫清楚點的話就是:
找 container 內的 div.tabBlock -> 全部隱藏 -> 再將第一個顯示出來

baseball 發表於 2009-12-11 19:52

您好,謝謝您!

頁: [1]

Powered by Discuz! Archiver  © 2001-2009 Comsenz Inc.