2 回答

TA貢獻(xiàn)1841條經(jīng)驗 獲得超3個贊
有什么區(qū)別$('input.current_title', '#storePreferences').prop('disabled', false);和$('#storePreferences input.current_title').prop('disabled', false);?
是的,但是很微妙
區(qū)別在于如何選擇元素。
$('input.current_title', '#storePreferences');
等于1:
$('#storePreferences').find('input.current_title');
但不等同于:
$('#storePreferences input.current_title');
即使相同的元素也會受到影響。
它們之所以不同,是因為using find允許將上下文返回到#storePreferenceswhen end調(diào)用。
1:jQuery v1.9.1源代碼中的194-202行
// HANDLE: $(expr, $(...))
} else if ( !context || context.jquery ) {
return ( context || rootjQuery ).find( selector );
// HANDLE: $(expr, context)
// (which is just equivalent to: $(context).find(expr)
} else {
return this.constructor( context ).find( selector );
}
根據(jù)您的問題,將修改相同的元素,因此功能上沒有差異,但重要的是要意識到所使用選擇器的廣泛含義。
添加回答
舉報