2013-03-04 73 views
5

我有一个“折叠”的面板通过设置包装div的宽度比内容的宽度小很多。但是,当我使用ctrl f来搜索单词时,我的折叠面板会滚动,即。折叠面板的包装div的scrollLeft属性不再为0.这是一个问题,因为我不希望它被滚动,因为它会弄乱UI。阻止浏览器搜索CTRLF滚动我的折叠div

有没有办法阻止搜索自动滚动我的折叠面板中的东西?某种事件我可以锁定(焦点?),以便我可以将scrollLeft重置为0,无论何时浏览器的搜索被激活,或CSS我可以设置?

我没有使用jQuery,所以jQuery相关的任何东西都不是一个选项。

回答

1

这是用户期望的任何浏览器和功能的默认功能,消除这种情况或防止它会给开发人员严重改变用户体验的能力,这通常是不可能的,也不是一个好主意。

如此说来,第一建议,我有如下

1)设置对象或它的内容为无的CSS显示之后完全折叠。
2)当折叠时删除内容并将其存储在内存中,以便在打开折叠内容时重新注入内容。
3)打开一个折叠元素后,将scrollLeft设置为0.

+0

我结束了使用第一种方法。 – 2013-10-16 16:15:35

+0

“它会给开发人员严重改变用户体验的能力......也不是一个好主意” - 这是无稽之谈。各种类型的网站都会覆盖上下文菜单,例如Google Drive会竭尽全力来隐藏您的图片网址,以防止您将其用作图片托管服务。禁用文本选择也是可能的,并且对用户体验的改变非常严重。 – Andy 2015-12-09 04:13:49

+0

我在RIA中有一个类似于组合向导的组件,并且向导中的向导被翻译(不是简单地滚动)在屏幕外的步骤是出于某种原因而不在屏幕上,并且不应该被搜索到。无论如何,并非所有的浏览器都会自动转换成离线的东西。 – Andy 2015-12-09 04:15:51

0

你尝试过overflow:隐藏在div上吗?