不需要使用jQuery按钮滚动
Unwanted scrolling with jQuery Buttonset
jQuery UI按钮/按钮集很适合我。我已经在这个网站上搜索了答案,但仍然没有一个有效的答案。我使用的是jQuery版本1.11.1和jQuery UI版本1.9.2。
我有一个由三个按钮组成的按钮集,我的用户可以点击它来选择他们网站上可用的三种颜色主题中的一种。一旦他们点击按钮,我会在按钮集的右侧显示一个带有选定颜色主题的示例网站横幅。所以我基本上是根据他们的选择来交换一张图片。
相关HTML:
<div style="float:left; width: 275px;">
<label for="radio">Your Club Website Color Theme</label>
<div id="colortheme">
<input type="radio" style="float:left;" id="colortheme1" name="colortheme" value="1" {{ct1}} ><label for="colortheme1">Theme 1</label>
<input type="radio" style="float:left;" id="colortheme2" name="colortheme" value="2" {{ct2}} ><label for="colortheme2">Theme 2</label>
<input type="radio" style="float:left;" id="colortheme3" name="colortheme" value="3" {{ct3}} ><label for="colortheme3">Theme 3</label>
</div>
</div>
<div style="margin-left:300px;">
<img id="bannerSample" src="/images/club{{BannerTheme}}.jpg" style="max-width:100%">
</div>
相关Javascript:
jQuery("#colortheme input:radio").click(function(e){
me.$form.hide();
jQuery("#bannerSample").attr('src','/images/club'+this.value+'.jpg');
me.$form.show();
});
注意:{{ct1}}、{{{ct2}、&{{ct3}由Perl服务器代码修补;$form只是上面代码片段上方表单集的jQuery对象。此按钮集位于jQuery UI对话框内的选项卡面板中。问题是,当我单击按钮集中的一个按钮时,我会意外地在对话框中向下滚动基于对该网站和其他网站的研究,我尝试了所有常用的解决方案,e.preventDefault()、e.stopPropagation()、return false、.on()等无法找到正确的解决方案或组合来停止不需要的滚动。以上是我能想出的最好的办法。第一次点击时它仍然向下滚动,但在那之后,它只是在更新图像时闪烁。
有人能推荐更好的方法吗
这个问题是由css中的冲突引起的。具体来说,类"ui-helper hidden-accessible"具有绝对位置,由于某种原因,该位置会导致滚动行为。
我选择在自己的样式表中创建一个更具体的规则,以取代默认的jquery ui-css:
.ui-buttonset .ui-helper-hidden-accessible{
position:relative;
}
或者,您可以使用display:none,但我不确定这是否会在其他浏览器中产生意想不到的后果。我选择了这条路线,而不是重写jquery ui规则,因为我不确定是否有其他ui元素的特定用例需要绝对位置,而且我不想在更新时记住不要覆盖css。
我是通过wordpress漏洞罚单发现的https://core.trac.wordpress.org/ticket/23684尽管需要注意的是,我不是在wordpress网站上工作,所以提出的解决方案是独立的。
- 如何停止向上滚动<按钮dojoType=“;dijit.form.Button”;type=“;提交”/>在
- 每次单击按钮时水平滚动元素
- 如何用按钮控制文本区域滚动
- 如何在已经有图标的滚动到顶部按钮中添加文本
- 按下后退按钮时,如何保持可滚动区域的滚动位置
- 模式上的后退和前进按钮位于图像库上(可滚动浏览)
- 如何停止两个按钮执行相同的工作?在这种情况下,它们都会滚动到顶部
- 如何在滚动时突出显示菜单按钮 - AngularJs
- 每次我按下按钮时,网站都会向上滚动
- 使用按钮滚动iframe-iPhone
- 从一个按钮滚动到不同的 ID
- jQuery通过向上/向下按钮滚动到下一个元素 - 如何为手动滚动添加处理,否则会混淆这一点
- 单击“返回顶部”按钮(滚动顶部)多次发布
- 不需要使用jQuery按钮滚动
- 主干后退按钮滚动问题
- 如何使关闭按钮滚动与页面
- 使用“下一步”和“上一步”按钮滚动锚标记
- 根据单击的按钮滚动到页面
- 防止左/右按钮滚动页面
- 如何使页面滚动到一个特定的元素时,单击一个按钮?滚动动画,如果可能的话