根据我的理解,焦点事件必须与输入框之类的东西一起使用,但这似乎对我不起作用。我有以下小提琴......当有人专注于文本框时,我正试图让'Guide'div出现。我不确定问题的一部分是否是我对“兄弟姐妹”的使用以及输入框是否需要唯一ID?但是我把唯一标识符作为父标记,然后引用兄弟...
http://jsfiddle.net/jhacks/2jjZF/2/
你会看到我确实有一些额外的代码用于'错误'和'好'的消息。我正在努力为那些匹配类似Twitter注册页面的人提供JQuery活动如果有人可以直接说://twiter.com/signup但是这是另一篇文章。
感谢任何和所有帮助。谢谢!
答案 0 :(得分:1)
你是对的,兄弟姐妹是错误的选择者。兄弟姐妹指的是具有相同父级的其他元素,其输入字段没有。
因为你使用的是ID选择器,并且ID是唯一的定义,所以不需要遍历。
$('input#registerBox').focus(
function() {
$('#registerGuideName').show();
}
);
您已经在使用$(this)
的jquery对象,为什么不直接选择该ID?
如果脚本需要遍历,因为文档中有多个,则需要使用类或数据属性而不是ID选择器。正确的遍历意味着找到一个共同的父母,然后找到合适的孩子。
http://api.jquery.com/category/traversing/
$('input.registerBox').focus(
function() {
$(this).closest('.registerName').find('.registerGuideName').show();
}
);
答案 1 :(得分:1)
$('input#registerBox').focus(
function() {
$(this)
.closest('#registerBoxName') // go to parent div#registerBoxName
.next('.registerGuidance') // move to next div.registerGuidance
.find('#registerGuideName') // finding target #registerGuideName within div.registerGuidance
.show(); // make display
}
});