1

我有一个带有 DIV、3 个输入的表单,每个输入都位于一个标签元素内。我想在关注每个 INPUT 时更改 DIV 元素的背景图像。

我无法返回 DOM 来用 CSS 修复这个问题,所以有人可以建议几行 jQuery 吗?

谢谢

4

3 回答 3

3
$('div input').focus(function(){
    $(this).parents('div:eq(0)').addClass('specialCSSclass');
}).blur(function(){
    $(this).parents('div:eq(0)').removeClass('specialCSSclass');
});

您需要在 CSS 中创建一个类,然后用它替换“specialCSSclass”。

于 2008-11-19T12:28:24.803 回答
1
$('input').focus(function(){
    $(this).parent().parent().addClass('highlight');
}).blur(function(){
     $(this).parent().parent().removeClass('highlight');
});
于 2008-11-19T12:27:49.343 回答
0

jQuery最接近也是一种选择。

closest( selector )
    .closest( selector )
    .closest( selector, [ context ] )
closest( selectors, [ context ] )
    .closest( selectors, [ context ] )

根据描述.. 获取与选择器匹配的第一个祖先元素,从当前元素开始并向上遍历 DOM 树。

http://api.jquery.com/closest/

于 2011-01-14T19:14:29.070 回答