2013-07-30 69 views
-4

我認爲標題會有點混亂,但我想要的是創建一個新的jQuery對象$(),具有特定的上下文。創建新的jQuery全局對象

例如,我有我的jQuery對象,其上下文是window對象。而且,我想創建一個新的jQuery對象,並且新的上下文將會是一個特定的div。全局jQuery和新的jQuery會有不同的上下文,因此,我認爲,div的jQuery不會訪問該div之外的外部HTML元素。

問題是,我不知道如何創建一個新的jQuery對象。我正在閱讀jQuery源代碼,但有點令人困惑,我不確定如何創建具有特定上下文的新jQuery對象。我怎麼能這樣做?

謝謝先進!

+6

你爲什麼想這樣做?你是否在尋找類似$(selector [,context])的東西?[http://api.jquery.com/jQuery/#jQuery1] –

+1

我認爲你以錯誤的方式接近你的大問題。 – tymeJV

+0

出於好奇,你爲什麼要這樣做? – putvande

回答

0

我希望我能理解你的正確。它有幫助 -

var $new = $("#your-div-id"); 

//always use new jQuery object $new for your purpose 
$new.find(selector); 
0

我想你不明白jQuery如何在這裏工作。 jQuery封裝了一個類似div#some-id-here的選擇器語句,查看它,然後嘗試在其上運行鏈接操作。默認$在您所想的方面並不真正具有上下文。

下面是一個假設兩個div分別爲onetwo的示例。

jQuery(function($) { 
    $('body').find('div').each(function(i) { 
     alert($(this).attr('id')); 
    }); 
}); 

會工作。

不會起作用,因爲$並沒有真正有一個window方面像你想象的那樣。它所具有的「背景」是你所說的選擇。

+0

我怎麼能告訴jQuery上下文應該有哪些? – user2633604