Tag: google chrome

jQuery .hover()或.mouseleave()没有使用chrome

问题描述:在我的菜单中,当.mouseenter()菜单打开,当.mouseleave()关闭时,但如果我点击很多,则会执行.mouseleave()事件。 这只发生在Chrome浏览器上。 我的菜单中有其他.click()事件,但每次点击我都会执行.mouseleave()事件。 $(document).ready(function() { $(“#nav1 li”).hover( function() { $(this).find(‘ul’).slideDown(); }, function() { $(this).find(‘ul’).slideUp(); }); }); #nav1 a { color: #FFFFFF; } #nav1 li ul li a:hover { background-color: #394963; } div ul li ul { background-color: #4a5b78; list-style: none } #nav1 > li > a { padding: 16px 18px; display: block; border-bottom: 2px solid […]

使用触摸屏在Windows 8上检测Chrome中的触摸事件

我构建了一个触摸/鼠标友好的jQuery插件。 它适用于手机(ios,android …)和桌面浏览器。 但是我在使用触摸屏的笔记本电脑上安装Windows 8 Chrome时遇到了一些问题。 不幸的是,我没有这样的设备,不能做任何测试。IE10工作正常。 让我解释一下我的内容(非常简化的代码): 1.检查是触摸设备: base.isTouch = (“ontouchstart” in document.documentElement); 2.获得适当的活动 if(base.isTouch === true){ //use touch events: “touchstart.owl”, “touchmove.owl”, “touchend.owl” } else { //usemouse events “mousedown.owl”, “mousemove.owl”, “mouseup.owl” } 3.检查触摸事件: if(base.isTouch === true){ x = event.touches[0].pageX y = event.touches[0].pageY } else { x = event.pageX y = event.pageY } 链接到真实代码 我认为chrome的问题在于检测我的触摸事件,但是使用鼠标事件代替并将它们转换为触摸。 […]

dxTooltip无法在IE中工作,在Chrome中工作

我有一个dxChart : var chart = $(“#chartContainer4”).dxChart(); 其中我正在采用传说中的矩形: var PayerLegendBoxes = $(“#chartContainer4 .dxc-legend g rect”); 并使用dxTooltip在鼠标hover时显示。 PayerLegendBoxes.each(function () { var nextElementHTML = this.nextSibling.innerHTML; var currElementTip = nextElementHTML + “tip”; var currElement = this; var title = chart.append(“” + nextElementHTML + “”); var tooltipSimple = $(“#” + currElementTip).dxTooltip({ target: currElement, }).dxTooltip(“instance”); $(currElement).unbind().hover(function () { tooltipSimple.toggle() }); }); […]

使用jQuery打开多个选项卡

好的,我觉得我已经在这里做了尽职调查… JSFIddle – http://jsfiddle.net/taytayevanson/8BpHw/5/ 我正在尝试创建一个将弹出多个选项卡的页面。 我明白使用这段代码…… New Tab 将弹出1个新标签。 但是,正如此 stackoverflow q / a中所述,它需要是一个“用户启动的事件”,Chrome才能弹出新选项卡而不是窗口。 由于这个要求,循环将弹出1个新选项卡,然后为每个后续链接弹出新窗口。 jQuery(“a.site”).each(function(){ var string = jQuery(this).attr(“href”) + “/” + jQuery(“#arguments”).val(); jQuery(this).attr(“href”,string); jQuery(this).trigger(‘click’); }); 我已尝试以编程方式创建链接并单击它们,使用不同的插件,超时,方法,我甚至尝试“菊花链”处理并在页面加载(一个巨大的PHP / GET变量/页面加载触发器事物)上触发它但是它仍会弹出窗口,因为事件不是用户启动的。 我试过这个 …… function clickLink(link) { var cancelled = false; if (document.createEvent) { var event = document.createEvent(“MouseEvents”); event.initMouseEvent(“click”, true, true, window, 0, 0, 0, 0, 0, […]

javascript window.open不在safari和chrome中工作

我有一个div元素。 div是一个图标。 当您单击此图标时会触发表单提交。 在表单提交上有一些计算,并且在这些计算结果中打开一个新选项卡。 我使用“ window.open(url,’_ blank’); ” 但在safari和chrome中,这个新标签被视为弹出窗口并被阻止。 我试图创建一个隐藏的href并触发click,这样它将在新选项卡中打开页面,但它不起作用。 知道如何解决这个问题吗? 编辑 – 找到解决方案 您需要在$ .ajax成功方法内的click事件上添加window.open。 这样它就会起作用。 $(‘#myButton’).click(function () { var redirectWindow = window.open(‘http://google.com’, ‘_blank’); $.ajax({ type: ‘POST’, url: ‘/echo/json/’, success: function (data) { redirectWindow.location; } }); }); http://jsfiddle.net/safeeronline/70kdacL4/1/

即使在Chrome上进行URL重定向后,Jquery仍继续运行

$(‘#target’).click(function() { window.location.replace(“http://www.google.com”); return false; }); 如何告诉chrome和所有其他浏览器停止他们正在做的事情并立即重定向到另一个网页? Firefox 8.0会立即执行window.location.replace,正如我所希望的那样。 当我单步执行上面的代码时,Chrome 15.0.874.121飞过window.location代码并返回false,然后进入后续的Jquery函数(换句话说,Chrome完成整个调用堆栈,然后替换URL) 我正在尝试在许多不同的区域执行重定向,最大的问题是额外的Jquery可以为重定向添加3-5秒的时间,特别是在.ajax成功调用中。 我正在使用jQuery 1.7.1并且没有javascript错误 我试过了: 到处都是“回归假” 使用不同的重定向(location.reload(true),location.href等) 将我的重定向移动到任何其他function之外 完全将我的重定向移动到一个单独的function 无论我做什么,Chrome都拒绝简单地转到另一个网站而不先完成其调用堆栈。 请帮忙。

在Chrome上执行多个选择器时,jQuery中的INVALID_NODE_TYPE_ERR

我正在做一个jQuery多选择器查找: element.find(“fieldset, input[type=hidden], input[type=text], :radio”) 在Chrome版本1中,它在jquery的selector.js的第722行上给出了此错误“INVALID_NODE_TYPE_ERR:DOM范围exception2” aRange.selectNode(a); 在上下文中: function(a, b) { var aRange = a.ownerDocument.createRange(), bRange = b.ownerDocument.createRange(); aRange.selectNode(a); aRange.collapse(true); bRange.selectNode(b); bRange.collapse(true); var ret = aRange.compareBoundaryPoints(Range.START_TO_END, bRange); if (ret === 0) { hasDuplicate = true; } return ret; } 在这种情况下, a是HTML隐藏输入字段。 从我可以找到的,它似乎是较旧的webkit版本的问题,因为在Chrome的新测试版中不会出现此错误(可能是因为它从未命中此代码,因为它实现了document.documentElement.compareDocumentPosition参见选择器。 js#703 )。 为了解决这个问题,我用四个单选项替换了多选择器,我将它们合并在一起工作正常,但它真的很难看: elements = element.find(‘fieldset’) .add(element.find(‘input[type=hidden]’)); .add(element.find(‘input[type=text]’)); .add(element.find(‘:radio’)); 这真的是解决这个问题的唯一方法,还是我还能做些什么呢? 更新 在Sizzle讨论论坛上有一个关于这个的post ,一个可能的Sizzle(jQuery选择器)代码的补丁已经发布,这可能会进入jquery核心。 […]

使用jquery ajax的两个CORS请求之间的时间间隔

我正在使用jQuery $.ajax向Web服务发出CORS请求。 根据标准,有一个飞行前请求,然后是实际的POST请求。 我注意到的是,每次我尝试进行一次Web服务调用(一次飞行前和一次实际POST请求)时,有两个请求。如果两个请求之间有一个时间间隔。 如果我继续连续进行网络服务呼叫而没有任何时间间隔(例如两次请求之间不到1秒),那么预飞行就会丢失。 我怎样才能每次都避免这个飞行前请求? 这个时间间隔是多少? 这是Chrome浏览器特有的内容吗?

访问目标页面上的现有jQuery副本

我正在编写一个小用户脚本来从服务器获取一些内容并将其添加到平局。 该网站有jQuery,我怎么才能使用网站的jQuery而不是@require (因为Chrome现在不支持这个)?

$(window).load Chrome,Safari问题

好的,这是问题所在 $(window).load(function () { \\Do something }); 和其他变化只是在铬和safri不起作用。 FF,IE歌剧工作很好我搜索但没有找到任何工作的解决方案有人知道如何检查铬,Safari页面加载完成后?