Tag: javascript

如何捕获整个浏览器窗口的模糊和焦点?

我想捕捉实际浏览器窗口的模糊和焦点 – 这意味着将焦点更改为子帧不感兴趣。 目前我一直在使用$(top).focus() $(top).blur() 和$(window).focus() $(window).blur() 但是,当用户将焦点更改为嵌入式iframe时,这些会触发,这是我不想要的。 有谁知道捕获TRUE激活和停用窗口的方法? [编辑] 当用户从网页移动到嵌入式iframe的网页时,模糊和焦点事件会触发。 这与“窗口激活”事件不同,“事件激活”事件仅在实际的BROWSER窗口(或选项卡)被带到前面或被发送(即,更改或最小化)时触发。 我对模糊不感兴趣,因为用户导航到嵌入式框架的事实对程序没有影响。 但是,如果用户最小化窗口,更改选项卡或切换到另一个程序,我想知道它…

等到jquery ajax请求列表完成?

这个问题几乎是一样的: 等到所有jQuery Ajax请求都完成了? 但我的问题是: 我正在做很多ajax请求,并将它们保存在一个数组中: var events = []; for(var i = 0; i < 10; ++i) { events.push($.ajax({…})); } $.when(events).done(function() { // do something when all requests are done. }); 正如相关问题所述,$ jqXHR方法按顺序采用了一些jqXHR对象 ,但在这里我想要一个列表 。 我在http://api.jquery.com/jQuery.when/#jQuery-when-deferreds中阅读了这些文档,但该方法似乎不支持这种情况(将jqXHR列表jqXHR给$.when jqXHR函数) 怎么会这样? Plz的帮助。

TypeError:stepUp调用未实现接口HTMLInputElement的对象

我有这个代码 Find/Add Horse 当我点击一个链接时,我会进行ajax调用 $(document).on(‘click’, ‘.find_or_add_horse’, function () { var search_term = $(this).parents(‘.sub-middle-column’).find(‘.search_horse’); var box_no = $(this).data(‘box_no’); $.ajax({ url: “/startup_wizard/find_horse”, dataType: ‘script’, type: ‘GET’, data: { box_no: box_no, search_term: search_term} }); return false; }); 但是,当我点击链接时,当我从ajax调用中删除此代码时,我收到此错误“ TypeError: ‘stepUp’ called on an object that does not implement interface HTMLInputElement ” data: { box_no: box_no, search_term: search_term} 我的代码工作正常。 […]

jquery转义方括号来选择元素

考虑一个输入元素 这里输入字段是动态生成的。 我需要选择那个字段。 所以我用过, alert($(‘#meta[152][value]’).val()); 但这似乎无效。 搜索后我发现,“方括号”需要像#meta\\[152\\]\\[value\\]一样进行转义 那怎么办呢? 我目前使用此代码, var id = “#meta[152][value]” // (I get this value by another method) I need the escaping to be done here. So that i can use as / **我需要使用正则表达式转换id的值,替换或任何其他方法来获取#meta \ [152 \] \ [value \]而不是手动** / alert($(id).val()); 您的建议会有所帮助!

使用jquery在click事件上提交表单

那么有人可以告诉我们为什么这些选项都不会真正提交表格? 我正在尝试做一些更复杂的事情,但我已经将其归结为此尝试找出为什么我似乎无法使用click事件提交此表单并提交() Untitled Document $(function() { $(‘#submitButton’).click(function(e) { e.preventDefault(); $(“#testForm”).submit(); }); $(‘#submitLink’).click(function(e) { e.preventDefault(); $(“#testForm”).submit(); }); }); Name Submit Form 谢谢!

提交表单之前的Jquery

我有一个列表,(一个简单的列表),我可以从中选择和设置元素(使用js),然后是一个允许我选择我想要多少元素的表单,以及一个提交表单。如果没有选择一个元素,有一个抛出exception的脚本。 问题是我希望表单不提交,如果没有选择元素,但不抛出exception,而是向我显示提交按钮下的消息(使用jquery)。 我的脚本如下: stock_2 > 0):?> <a href="#" onclick='selecteazaElement(id; ?>,stock_2; ?>);’>label; ?> label; ?> <form name="addtobasket" method="POST" action=" $sale->id)); ?>”> Alege numarul de produse Adauga in cos 以及设置列表元素的js: function selecteazaElement(id,stock) { document.addtobasket.idOfSelectedItem.value=id; window[“canSubmit”] = true; var number23=document.addtobasket.number; number23.options.length=0; if (stock>=6) stock=6; for (i=1;i<=stock;i++) { //alert ('id: '+id+'; stock: '+stock); number23.options[number23.options.length]=new Option(i, i); } //window.status="my status"; […]

在响应式导航中添加更多列表按钮

我有一个让我们说12个项目的导航,当分辨率变小时,项目会在新行中下降。 当项目不再适合导航时,我需要在导航的右侧放置一个“更多”下拉按钮。 并把那个不适合下拉的项目。 如果你不理解我,下面有图片。 但问题是导航项的宽度并不总是相同,因为导航项是从REST api生成的。 我试着制作jQuery脚本来计算项目宽度并将它们添加到导航中。 这是我创建的脚本,我匆忙制作,所以它非常糟糕。 我需要帮助如何正确计算项目和导航宽度,并计算何时添加项目到导航或从导航中删除项目。 如果你没有得到它,这是图像: http : //img.hr/aagV /* * Here we check how many items can we put on the navigation bar * If item doesn’t fit we clone it on the more dropdown button */ function removeMany() { var i = $items.length – 1; if (itemsWidth > navWidth) […]

ajax完成后获取变量

我有这个代码向我的服务器发出一些请求: function myAjaxCheck(token) { $.ajax({ type: ‘POST’, url: ‘auth.php’, data: { token: token, }, dataType: ‘json’, success: function (data) { if (data.auth == ‘OK’) { alert (‘ok’); } } else { alert(‘Error: ‘ + data.auth); } } }).done(function (data) { return data; }); } 所以,我需要将返回的数据传递给变量,如: Var MyVariable = myAjaxCheck(token); console.log(MyVariable); 在控制台: 未定义 问题出在哪里,应该在完成后返回数据,但事实并非如此。

如何通过Chrome扩展程序监听url更改

我正在撰写Google Chrome扩展程序,以自动完成一些常见任务。 我想要的function如下: 创建一个新选项卡并导航到我的webmail 输入用户名和密码 点击“提交”按钮 等到Webmail页面出现,然后选择“roundcube”客户端。 我已完成步骤1,2和3,他们工作。 我提交凭据后尝试侦听url更改时遇到很多麻烦,以便选择圆形客户端的function可以运行 我知道我可以通过添加到我的清单来显示客户端选择页面时运行脚本,但我想使用“chrome.tabs.executeScript”,这样只有当我从chrome扩展程序运行脚本时才选择roundcube而不是我去手动选择客户端页面。 这是我的manifest.json: { “manifest_version”: 2, “name” : “Chrome Autobot”, “description”: “This extension will run various automation scripts for google chrome”, “version” : “1.0”, “browser_action” : { “default_icon” : “icon.png”, “default_popup”: “index.html” }, “permissions”: [ “activeTab”, “webNavigation”, “tabs”, “http://*/*”, “https://*/*” ] } 这是我的chrome脚本: jQuery(function($) { “Use Strict”; […]

如何创建一个空的jQuery结果

编辑 :从jQuery 1.4开始,使用$()将如下所述工作。 我需要遍历一个数组并创建一些我希望在一个jQuery结果对象中拥有的元素。 for (var i = 0; i < 10; ++i) { $myJQueryObj = $myJQueryObj.add($("blahblah”)); } 然而,问题在于你需要一个jQuery对象,你显然想要将其启动为空。 在上面的例子中,我应该如何初始化$myJQueryObj ? 以下示例不起作用,因为它们都选择了文档对象: $(”) $() $(null) $(false) 这些确实有用……但…… $(‘#nonExistantElement’) // yuck $().slice(0,0) // surely there’s a nicer way? 有没有更好的办法?