Tag: events

NVD3图表禁止隐藏图表的渲染

我遇到了与此处描述的问题类似的问题: 对我有用的解决方案是实现以下代码: $(function () { $(document).on(‘shown.bs.tab’, ‘a[data-toggle=”tab”]’, function (e) { window.dispatchEvent(new Event(‘resize’)); }); }); 但是,我感觉所有的图表都在重新渲染,无论它们是在活动标签上(可见)还是在非选定标签(隐藏)中。 例如,如果我有20个标签页,则重新渲染所需的时间比2个标签页要长得多。 有谁知道如何确保只有活动图表被resize/重绘? 即如果图表不可见,如何抑制resize/重绘事件?

Rails:如何在datepicker中添加工具提示事件并在几个月内限制它们

我有一个datepicker,我希望用户在其中看到由admin创建的所有事件。 添加function以添加带有事件标题的工具提示会很不错。 我知道jQueryUI的datepicker允许这样的事情。 我必须使用beforeShowDay方法。 但问题来了。 1)如何将@events数组传递给jquery代码? 我知道我可以在视图中访问该数组但我可以做这样的事情: var events = @events; 2)第二个也是最重要的问题 。 这种方法将使我的应用程序获得大量事件来处理。 当事件开始变得很多时,这将减慢一切。 我如何根据今天的日期限制事件在几个月内? 希望明确。 任何帮助? 更新1 (第一个问题和第二个问题的一小部分都解决了)好吧我设法传递给javascript我的实例事件数组如下: var events = 这样我就可以通过范围限制在控制器中以我想要的方式限制事件。 当我在浏览器控制台中检查事件数组是这样组成的: [[” Snap-happy athletes ca…arrival at London 2012 “, “2012-07-28T00:00:00Z”], [“AdWords API Office Hours EMEA”, “2012-07-25T00:00:00Z”], [“Under the math”, “2012-07-22T00:00:00Z”], [“Superman power”, “2012-07-13T00:00:00Z”], [“Google I/O 2012 Keynote”,”2012-07-01T00:00:00Z”]] 这是一个像这[[“标题”,“事件的日期”],…]的数组 但是如何将它们放在带有beforeShowDday的datepicker中呢? 这是我的第一次尝试,但它不起作用 $(“#datepicker”).datepicker({ […]

页面刷新时继续隐藏HTML输入字段?

在HTML页面上有一个filter部分,它与各种下拉菜单和文本框一致。 当选择’type_of_report’下拉列表时,’onchange’事件将隐藏该’type_of_report’的所有不相关输入。 过滤条件通过GET保存(我通过PHP $ _GET检索)。 问题是,当我提交表单(运行报表)时,页面刷新时会重新显示“隐藏”字段。 如何在页面刷新时隐藏不相关的输入字段? 注意:我使用jQuery(1.4.2)来隐藏字段。 UPDATE1: 最终的缩写解决方案(基于反馈)如下所示: <body onLoad="hideall('’);”> …rest of code

检查jQuery“Fancybox”是否已经注册?

我正在重新编写一个像这样的jQuery fancybox: $(document).ready(function() { $(“#help”).fancybox({ ‘width’: ‘90%’, ‘height’: ‘90%’, ‘autoScale’: true, ‘transitionIn’: ‘elastic’, ‘transitionOut’: ‘none’, ‘titleShow’: false, ‘type’: ‘iframe’ }); }); 但是,在页面传输/回发时,它会多次注册,这会减慢到破坏的程度。 有没有办法检查事件是否已经注册,如果没有,请注册? 伪代码: //check if fancybox has not been registered if($(“help”).fancybox == null)) { //register fancy box }

textarea关于输入问题

我有一个textarea,我想要从键盘或鼠标/编辑菜单捕获必要的事件。 现在,当用户副本通过CTRL-V在textarea中粘贴文本时,将在keydown和paste上调用processUserInput两次,这是出于各种原因所不希望的。 我用这种方式“解决”了它: var IsProcessingEvent = false; $(“#textarea”).on(‘click keydown cut paste’, processUserInput); function processUserInput(e) { if(!IsProcessingEvent) { IsProcessingEvent = true; // do the actual processing of user input IsProcessingEvent = false; } } 我想知道是否有一个更优雅的解决方案来解决这个问题。 ps需要onpaste事件,因为用户可以通过鼠标右键单击或通过浏览器编辑菜单复制粘贴文本。 提前致谢!

jQuery keypress事件等待0.5秒,用于另一个用户按键

我正在为我的网站开发一个实时搜索,我想用一些简单的jQuery减少一些不必要的请求(当然我有一个后端泛洪控制)。 我的搜索字段有一个keydown-event-listener。 如果val()。length> = 3,则此侦听器currenty仅触发php搜索function的ajax命令。 但现在我想要一个额外的条件。 因此,当长度> = 3时,如果用户正在执行另一次按键,我想等待约0.5秒左右。 如果他这样做,则不应该调用该函数,并且我希望监听器再等待0.5秒并再次等待更多用户输入,依此类推。 我如何实现这样的function?

从onclick属性调用e.stopImmediatePropagation()

如何从onclick属性获取事件对象? 我试过了: Click me 另外,我试过这个: Click me 但控制台只显示元素。

更改后jQuery AutoComplete选择触发?

我正在使用jQuery UI AutoComplete控件 (刚刚更新到jQuery UI 1.8.1)。 每当用户离开文本框时,我想将文本框的内容设置为已知良好值,并为所选值设置隐藏ID字段。 此外,我希望页面在文本框的内容更改时回发。 目前,我通过让autocomplete select事件设置隐藏ID然后在文本框上设置更改事件来设置文本框值,并在必要时导致回发来实现此function。 如果用户只使用键盘,这可以很好地工作。 您可以键入,使用向上和向下箭头选择值,然后使用Tab键退出。 触发select事件,设置id,然后触发change事件并返回页面。 如果用户开始输入然后使用鼠标从自动完成选项中选择,则更改事件将触发(当焦点转移到自动完成菜单?)并且页面在select事件有机会设置ID之前发回。 有没有办法让更改事件在select事件之后才会触发,即使使用鼠标也是如此? $(function() { var txtAutoComp_cache = {}; var txtAutoComp_current = { label: $(‘#txtAutoComp’).val(), id: $(‘#hiddenAutoComp_ID’).val() }; $(‘#txtAutoComp’).change(function() { if (this.value == ”) { txtAutoComp_current = null; } if (txtAutoComp_current) { this.value = txtAutoComp_current.label ? txtAutoComp_current.label : txtAutoComp_current; $(‘#hiddenAutoComp_ID’).val(txtAutoComp_current.id ? txtAutoComp_current.id : […]

在Twitter Bootstrap中使用tap事件

我正在使用twitter-bootstrap开发一个可以在多个设备上呈现的Web应用程序。 现在我想处理’tap’事件。 所以我的问题是: 我可以使用jquery 1.7.2处理’tap’事件而不使用jqueryMobile吗? 如果上述问题的答案为否,那么如何将jqueryMobile与twitter-bootstrap集成。 因为我尝试在我的twitter-bootstrap页面中包含jQueryMobile js,当我使用它时,页面中断!

使用键盘时,jQuery自动完成应跳过禁用元素

如果你看到这个小提琴演示 ,不是我做的,那我怎么能避免键盘可以关闭并选择禁用的元素? 鼠标工作正常(无法选择它)但我可以用键盘下来并选择它,导致空搜索: – / Fiddle演示来自这篇文章, 如何在jQuery自动完成列表中禁用元素 jQuery代码: $(function () { var availableTags = [ “ActionScript”, “AppleScript”, “Asp”, “BASIC”, “C”, “C++”, “Clojure”, “COBOL”, “ColdFusion”, “Erlang”, “Fortran”, “Groovy”, “Haskell”, “Java”, “JavaScript”, “Lisp”, “Perl”, “PHP”, “Python”, “Ruby”, “Scala”, “Scheme”]; $(“#tags”).autocomplete({ source: availableTags, response: function (event, ui) { if (ui.content.length > 3) { while (ui.content.length > 3) { […]