Eri*_*ric 10 javascript jquery webkit
我正在创建一个调查表单,当用户关注它们时,需要突出显示每个问题和一组答案(通过更改背景颜色)..focus()和.blur()都可以在Firefox和IE中使用,但不能完全在Safari和Chrome中使用.我也尝试了.focusin()和.focusout(),结果相同.编辑:单击不会触发焦点事件,但通过输入字段进行选项卡. 我说并不完全是因为它适用于文本输入,选择输入和textarea输入; 但不是收音机和复选框输入.
$(document).ready(function()
{
$("form li").focusin(function()
{
$(this).addClass("over");
}).focusout(function()
{
$(this).removeClass("over");
});
});
Run Code Online (Sandbox Code Playgroud)
这适用于类似于此的html块:
<li>
<label for="webmail" class="desc">Email</label>
<input type="text" name="webmail" id="webmail" />
</li>
<li>
<label for="business" class="desc">Purpose of your Charter Flight:</label>
<div>
<span>
<input type="radio" name="purpose" id="business" class="radio" />
<label class="choice" for="business">Business</label>
</span>
<span>
<input type="radio" name="purpose" id="pleasure" class="radio" />
<label class="choice" for="pleasure">Pleasure</label>
</span>
</div>
</li>
Run Code Online (Sandbox Code Playgroud)
我试着瞎搞与切换,但是我正在寻找一个更优雅的解决方案,不使用令人费解的逻辑,使其工作涉及.有任何想法吗?
昨晚我在开车回家的路上思考了这个问题,并自己想出了办法,这可能不是最优雅的解决方案,但它确实有效。
$(document).ready(function()
{
$("textarea, input, select, .radio, .checkbox").click(function()
{
$("form li.over").toggleClass("over");
$(this).parents("li").toggleClass("over");
});
});
Run Code Online (Sandbox Code Playgroud)
不管怎么说,还是要谢谢你!
| 归档时间: |
|
| 查看次数: |
26468 次 |
| 最近记录: |