Tag: 谷歌浏览器

在Chrome中模拟keydown事件

我想在Google Chrome控制台中模拟keydown事件。 我感兴趣的网站是web.whatsapp.com,关注的元素是document.getElementsByClassName(“input-search”)[0]; 我想要做的是,当在该字段中键入一些文本时,下面显示的联系人列表会更新包含该文本字段中内容的联系人。 在尝试其他任何事情之前,我只需使用此答案将焦点设置到此文本字段。 我尝试过的事情是: https://stackoverflow.com/a/12187302/1291122 – 没有任何反应,并且在显示的联系人列表中没有更新任何元素。 https://stackoverflow.com/a/4176116/1291122 – 同样,结果相同。 https://stackoverflow.com/a/10520017/1291122 – 什么都没发生。 结果相同 还有一些其他来源。 但没有任何效果。 如何使用JavaScript控制台模拟确切的效果(在文本字段中键入一些文本并查看联系人列表更新)? 我的chrome版本是截至编写答案之日的最新版本 – 41.0.2272.101 编辑: 这是我尝试过的示例代码之一。 (从上面的答案3) setTimeout(function () { $(“.input-search”).focus(); Podium = {}; Podium.keydown = function(k) { var oEvent = document.createEvent(‘KeyboardEvent’); // Chromium Hack Object.defineProperty(oEvent, ‘keyCode’, { get : function() { return this.keyCodeVal; } }); Object.defineProperty(oEvent, […]

在Chrome中,加载Ajax后页面不会resize

我一直狂热地穿过我正在建造的网站的最后一段路线,而且我只是遇到了奇怪的奇怪怪癖。 FF和IE似乎工作正常。 我正在使用jQuery来加载HTML存根,在这种情况下,很多来自外部博客的内容,但是当从非常长的页面切换到非常短的页面时,我得到大约一英里的未使用的页面仍然粘贴到结束时文献。 以下是加载存根的页面正文如下所示: Contact UsPrivacy PolicyShipping & Returns © 2011 Victory Barbers and Brand 我的所有负载都是使用jQuery load() ,我有一个没有这个问题的站点迭代。 我一直在转向更宽100%的宽度风格,这个问题在这个过程中出现了。 我的问题是:有没有办法强制页面在转移到不同/更短的内容时重新检查其大小?

Chrome扩展程序“$未定义”错误

当我处理我的chrome扩展时,我收到错误“$ is not defined”。 这是我的清单文件: { “name”: “X”, “description”: “Snip this page”, “version”: “2.0”, “permissions”: [ “activeTab” ], “background”: { “scripts”: [“background.js”], “persistent”: false }, “content_scripts”:[{ “matches” : [“”], “js”: [“jquery-2.0.2.js”,”jquery.Jcrop.js”], “css”: [“jquery.Jcrop.min.css”] }], “browser_action”: { “default_title”: “Snip this page” }, “manifest_version”: 2 } 这是我的background.js文件: chrome.browserAction.onClicked.addListener(function(tab){ // No tabs or host permissions needed! chrome.tabs.executeScript({ file: […]

从内容脚本同步获取存储数据

我目前正在开发chrome扩展程序,Github上提供了源代码。 目标是将自定义Javascript注入网页。 目前,我将每个自定义Javascript Inject存储在localStorage中 ,并从内容scipts中调用它们。 我已将run_at设置为document_start 。 我使用它,从后台脚本获取存储的注入 : chrome.extension.sendMessage({method:”get_injects”},function(injects){ for(index in injects){ if(/^items\./.test(index)){ itemJSON = injects[index]; //if(window.location.host.toString().indexOf(itemJSON.url)){ if(window.location.host.toString().match(itemJSON.url + ‘$’)){ var js = itemJSON.js.toString(); eval(js); } } } }); 问题 我想在文档加载之前准确运行Inject脚本 。 但是使用提出的方法,控件将通过chrome.extension.sendMessage并且不会等待获得响应injects 。 所以, eval(js); 将在页面加载的中间执行。 我该如何解决这个问题,这样我才能在页面加载之前注入?

‘beforeunload’Chrome Issue

我有这个简单的代码 – $(window).bind(‘beforeunload’, function(){ alert(“Good Bye”) }); 适用于Firefox,IE8,但不适用于Chrome。 这是一个已知问题还是有其他替代方案? 实际上我想要做的是在用户试图关闭浏览器时记录细节。 function LogTime() { jQuery.ajax({ type: “POST”, url: “log.php”, data: “”, cache: false, success: function(response) { } ); } $(window).bind(‘beforeunload’, function(){ LogTime(); }); 这适用于Firefox,但不适用于Chrome

Chrome无法处理jquery ajax查询

我在jquery中有以下查询。 它正在读取使用Nginx的长轮询模块设置的Nginx订阅/发布对的“发布”地址。 function requestNextBroadcast() { // never stops – every reply triggers next. // and silent errors restart via long timeout. getxhr = $.ajax({ url: “/activity”, // dataType: ‘json’, data: “id=”+channel, timeout: 46000, // must be longer than max heartbeat to only trigger after silent error. error: function(jqXHR, textStatus, errorThrown) { alert(“Background failed “+textStatus); // […]

在chrome扩展的后台页面中使用jQuery

目标 我正在尝试使用此样板代码在线查找使用字典API来查找所选单词并返回定义。 问题 我已经分别测试了实际的jQuery ajax调用,它运行良好。 此外,我可以在页面上获取所选单词。 但是,出于某种原因,我在Sample.js中的样板代码中实际调用 ajax函数时遇到了问题 建议是必要的。 background.html Image here: 的manifest.json { “name”: “Context Menus Sample”, “description”: “Shows some of the features of the Context Menus API”, “version”: “0.6”, “permissions”: [“contextMenus”], “background”: { “scripts”: [“sample.js”], “pages”: [“background.html”] }, “manifest_version”: 2 } Sample.js // A generic onclick callback function. function genericOnClick(info, tab) { console.log(“item […]

为什么有时jQuery选择器会返回类似“a.fn.init”的内容?

我不知道我的Chrome浏览器会发生什么,但突然之间在控制台中执行$(‘div#my’)的行为与以前完全不同。 有一次我经历过这个,但后来它以某种方式恢复了,所以我不知道如何重现它,今天又发生了。 请观看video: http : //peaceevertvimg.org/jq.php 。 在video中,我在两个不同的浏览器中执行$(‘div#my’) : 第一个浏览器不是chrome,但我相信它使用chrome的内核,所以它的行为是我所期望的,因为目前我的chrome没有按预期工作所以我必须用它来certificate我的预期:当你做$(‘div#my )`你直接看到html TAG,你可以很容易地看到标签的html内容,在这种情况下是“某事”。 相比之下,在我的chrome浏览器中,结果是不同的,当我执行$(‘div#my’)我看到一个Object( n.fn.init ),我无法立即看到“某事”,哪个是当然很不方便。 但之前,我很确定它不是这样的,行为与第一个浏览器中的行为完全相同。 这个video中的简单网页是http://peaceevertvimg.org/jquery.php ,您可以在Chrome浏览器中自行测试。 而且我很确定大多数人都不会看到我的video中显示的结果。 我的chrome发生了什么?(我已禁用所有扩展并将其更新到最新版本)

由滚动条触发的Jquery mouseleave文档

$(document).ready(function(){ $(document).mouseleave(function(){ $(‘#desktop-subscribe-modal’).modal(‘show’); }); }); 我试图在鼠标离开文档窗口时触发一个函数。 上面的代码在Firefox中运行良好,但在Chrome中,它是在鼠标hover在页面滚动条上时触发的。 有没有办法从mouseleave函数中排除滚动条?

Chrome更新破坏了我的滚动子菜单

在Windows和Osx中将Chrome更新为版本56 …它打破了我的滚动子菜单。 如果我使用鼠标滚轮滚动,滚动操作会起作用,但是当我将鼠标指针hover在滚动条上时子菜单会关闭。 我使用以下css滚动子菜单: ul.scroll-menu { position: relative; display: inherit !important; overflow-x: auto; -webkit-overflow-scrolling: touch; -moz-overflow-scrolling: touch; -ms-overflow-scrolling: touch; -o-overflow-scrolling: touch; overflow-scrolling: touch; top: 0 !important; left: 0 !important; width: 100%; height: auto; max-height: 400px; margin: 0; border-left: none; border-right: none; -webkit-border-radius: 0 !important; -moz-border-radius: 0 !important; -ms-border-radius: 0 !important; -o-border-radius: 0 !important; border-radius: 0 […]