Tag: jquery selectors

使用javascript在页面上获取所有可见的DIV?

另一个简短的Q,是否有任何简短的代码可以将所有DIV放在页面上,其可见性设置为“ block ”或“ inline ”? 谢谢

jQuery – 如何测试选择器是否与任何东西匹配?

说我有以下内容: $(‘#foo’) 我想知道那个选择器是否匹配任何东西。 我该如何测试呢?

jQuery选择没有类或ID的元素

试图找到一个选择器来获取既没有类也没有设置id的所有元素。 到目前为止,我有2个不同的输出,具体取决于选择器中是否有空格: // outputs var noID = $(‘*:not([id])’);// 144 – may have a class var noClass = $(‘*:not([class])’); // 100 – may have an id var withSpace = $(‘*:not([id]) *:not([class])’); // 99 ? var noSpace= $(‘*:not([id])*:not([class])’); // 84 ? 哪一个是正确的,我的猜测是noSpace – 但我不知道。 以前有人试过吗? 我的猜测是,对于空格,选择器进入没有ID的标签内,并选择没有与之关联的类的子元素。 并且noSpace结果是正确的结果,因为它只选择既没有类也没有id的元素。 有人可以validation吗? 谢谢! 回答 使用此选择器可以查找既没有类也没有与之关联的id的元素。 $(‘*:not([id]):not([class])’); 奖金: $(‘body *:not([id]):not([class])’); – 如果您只想处理实际内容

为什么$(’#table> tr’)选择器不匹配? (总是返回0)

HTML代码: .. 使用jquery的js代码: var l1 = $(‘#table > tr’).length; var l2 = $(‘#table tr’).length; alert(l1+’,’+l2);​ 结果: 0,1 为什么第一个#table > tr得到0? 你可以在这里看到现场演示: http : //jsfiddle.net/Freewind/PmsFQ/

使用完全限定的URL在Sizzle中选择元素的方法

在最近编写脚本时,我遇到了Sizzle如何使用href属性的特殊细微差别。 具体来说,在href上使用属性选择器,Sizzle将使用实际属性值: // Will not find … $(‘a[href=”http://www.example.com/https://stackoverflow.com/questions/9222026/method-for-selecting-elements-in-sizzle-using-fully-qualified-urls/index.html”]’) Sizzle使用.getAttribute()而不是elem.href (或更确切地说, elem[‘href’] ,正如Sizzle在大多数情况下所做的那样 ); elem.href将提供完全限定的URL。 为了更多地理解这一点,我创建了一个小提琴来尝试不同forms的URL 。 在测试过程中,我发现设置href等于自身的(显而易见的)“解决方案”: $(‘a’).each(function(){ this.href = this.href; }); 毫不奇怪,更新元素以反映this.href提供的完全限定的URL。 还有其他方法我发现工作(任何更新元素的href属性),但他们只是将上述方法移植到其他forms,或涉及像.filter() (演示)的东西 : var matches = $(‘a’).filter(function(){ var window_location = ‘http://example.com/services.html’; return window_location == this.href; }); 我之所以这么说是因为在选择之前做el.href = el.href是某种意义上的解决方法(我不认为这是一个很好的选择)。 例如,如果可以,则运行对一组元素的检查以查找是否包含与当前URL(或其他URL)的匹配链接,这样做更容易: $links.not(‘[href=”‘ + window.location.href + ‘”]’) 有没有办法做到这一点,而不必诉诸“更新”属性,或编写额外的代码来管理支票? 有没有一种方法我忽略了不涉及修改Sizzle的工作方式^ ? ^注意 :与仅添加expression相比,修改实际源代码将是一个(坏)想法: $.extend($.expr[‘:’], { […]

试图从get()请求返回的html中选择一个’body’标签

我正在进行ajax get调用 ,返回html页面的内容。 我正在尝试选择body标签的内容,但我的选择器返回一个空的jquery对象。 $.get(filename, function(data) { console.log($(“body”, data)); }) 其中data是html文件的内容。

为什么$(’html’)。animate()仅适用于IE和$(’body’)。Chrome / Safari需要animate()吗?

我必须使用$(‘html, body’).animate()来使代码段完全跨浏览器兼容,但这在链接动画时很不方便,因为它们有时会同时作用于和 。 IE8取决于拥有’html’,而Chrome或Safari依赖于’body’,因此我必须包括两者。 为什么会出现差异?

使用jQuery选择内部文本

41 给出了这样的东西,如果单击$(this) (类boxen ),我该如何为文本41设置动画? this > *不起作用。 这也不是this:children 。

用这个Jquery多个选择器

我已经搜索但无法找到如何做到这一点。 我正在尝试使用comment-modbox在this hide中创建元素并显示: $(‘.comment-wrapper’).each(function (index) { $(this, ‘.comment-modbox’).mouseover(function () { $(‘.comment-modbox’).show(); }); $(this, ‘.comment-modbox’).mouseout(function () { $(‘.comment-modbox’).hide(); }); }); 此代码只是隐藏并显示所有comment-modbox无论它们是否包含在this 。 谢谢你的帮助! 回答: $(‘.comment-wrapper’).each(function (index) { $(this).mouseover(function () { $(‘.comment-modbox’, this).show(); }); $(this).mouseout(function () { $(‘.comment-modbox’, this).hide(); }); });

我什么时候需要逃脱metacharectars? (jQuery选择器)

根据jQuery文档,我需要转义在我的选择器字符串中出现的元字符,当它们作为文字出现时。 但是,我找不到很多关于何时何时不逃避选择器的具体例子。 因此,当我不需要转义元字符时,当它们被解释为文字时,在: 属性选择器? 即 $(“[attr=value]”) Id选择器? 即 $(“#id”) class级选择器? 即 $(“.class”); 并且,有没有办法编写一个函数来替换选择器字符串中的metachars,同时仍然保留起始字符? 即: // replace all meta chars, preserving the id selection? $(“#id.rest$of*string”) // replace all meta chars, preserving the attribute selection? // going back to my previous question, do I even need to escape the metachars in this situation? $(“[attr=blah.dee#foo*yay]”) 我问这个问题的原因是因为我正在使用一个恰好有一些非常讨厌的选择器的网站。 而且我无法控制网站,因此我无法更改选择器以便更好地使用。 谢谢!!