0

我有一个调查表供用户填写。当用户完成一个问题(触发 onBlur 事件)时,页面会平滑滚动到下一个问题(使用锚标记)以供他们完成。除了以下情况(在 jsFiddle 中显示)之外,这工作正常:

  • 用户在第一个文本框“A”中输入文本
  • 他们通过向下滚动到然后直接单击单选按钮列表中的选项来离开文本框“A”。

它完美地触发了滚动事件(尽管它在 jsFiddle 中看起来不那么平滑,尽管这无关紧要)。问题是它没有将单击的单选选项设置为选中,并且用户需要单击再次选择。

jsFiddle:http: //jsfiddle.net/4ZkpZ/5/

有人有什么想法吗?

4

1 回答 1

1

问题很简单。您将事件处理程序附加到整个主体。因此,任何模糊事件都会导致滚动到指定的 div。导致模糊事件的任何其他操作都将被取消。这就是为什么单击生成模糊事件的单选按钮没有保持选中状态的原因。

我所做的只是将事件处理程序绑定到表。为了您的方便,您可以将特定的类添加到您的文本区域或添加封闭的 div。希望有帮助

http://jsfiddle.net/4ZkpZ/10/

于 2012-10-09T11:29:37.750 回答