$()[0] == document // strange !?
I just got bitten by an unexpected (for me at least) behaviour of the jQuery() function: $(), $(''), $(0), $(null) and $(undefined), all return a collection equal to $(document). ...this causes weird things to happen when one converts a String to a dom, when the string happens to be empty. Somehow I expected $('body').append( $(html) ); to be functionally equivalent to $('body').append( html ); Is that an unreasonable expectation, and if not, is it too late to fix? -- Már
1.3.2 unit test related question
Hi all, We've got envjs passing about 1350 tests with jquery 1.3.2 and in many cases the tests that are failing make sense because, for example we haven't implemented external stylesheet support, or an ajax get to a local php file doesnt make sense. So really there are just a handful of meaningful error left. Below are a couple comment/questions: 1. I can't figure out this test... test("add(String|Element|Array|undefined)", function() { ... ok( jQuery([]).add( document.getElementById('form')
Multiple draggable into one div and cancel
Hi, I'm triying gettin some help if someone can please. I'll explain first the situation then my problem: I've got to div, on with draggable item, connected to the other wich is sortable. When I move a draggable into the sortable, I cancel the use of the draggable's item adding a css class. I make it draggabale when I delete the sortable item-clone. Everything work's very well. My problem is that my draggable item can contain other draggable item (sort of treeview). Then, when I take just a part
making .closest() faster on common selectors to improve performance of event delegation.
Hi, The principle of .closest( selector ) is that it cycles through the ancestors of an event target until it finds an element corresponding to the event target, or hits the root. To check for an element matching the selectors it uses the .is ( selector ) function which collects all elements corresponding to the selector and cycles through them to find if "this" is any of those elements. If my memories about my algorithm lectures are correct, the complexity of this algorithm is O(n²). Only in the
Embeddable Applications
Hello Everyone, If you're into server-side PHP development, I just want to take a few seconds to tell you about a new feature that was introduced in Raxan Beta 2, which allows you to embed PHP/Ajax apps into any web page. These Embeddable Apps communicate with the server via jQuery's ajax API. See it in action here: Ajax ShoutBox - Reusable PHP/Ajax application http://raxanpdi.com/shoutbox-embedded-example.html Visit the Raxan website: http://raxanpdi.com/
when will 1.3.3 be released ?
Hi! My code is 2x faster (according to firebug profile) with the 1.3.3 nightly build compared to 1.3.2 release. So when 1.3.3 will be released ? Can I see a test farm results on the current build ? thanks guys !
JSON reviver option
Hi, any chance we could add a reviver option to the ajax settings for JSON requests? This could also be used by other plugins that parse JSON data too. - Mark Index: src/ajax.js =================================================================== --- src/ajax.js (revision 6529) +++ src/ajax.js (working copy) @@ -182,7 +182,8 @@ json: "application/json, text/javascript", text: "text/plain", _default: "*/*" - } + }, + jsonReviver: null },
Help
I'm a newbie to this so please be gentle. When browse my site on firefox on windows the jquery slideUp and slideDown effects cause a wierd trail and mess up the look of the site. any ideas on why or how to fix this?
update $(this) from within a plugin call
Hi! I'm creating a jquery plugin that alter an object to remove duplicates in it. My problem is that a variable that access the old selector result does not contain the same elements that it would have contained if it would have been executed after the duplicates removal. To illustrate : var v = $('div); // 150 objects v.removeDuplicate(); // remove 10 duplicates // here v still point to 150 objects Here is my plugin : jQuery.fn.__sort = function() { return this.pushStack([].sort.apply(this, arguments),
Losing checkbox 'checked' state on append under IE6?
Hello list, Not sure if this is the right place to ask this but here goes. I might have discovered an issue with jquery under IE6. It seems a checkbox doesn't keep it's state after it is appended to another element. The following piece of code reproduces the issue. Can someone shed some light on this? Thanks in advance, - Emiel van de Laar -- <html> <head> <script type="text/javascript" src="jquery-nightly.js"></script> <script type="text/javascript"> $(document).ready(function()
Firefox animation stutter
Is there anything that can be done about poor performance with some animations in Firefox? I know it varies by machine, but with a core 2 duo and 2 gigs of ram running FF 3.5, I'm getting some pretty ugly stutters in a simple carousel that I wrote this morning for my portfolio site. If you're running a Windows machine you can probably see what I'm talking about (Macs are too slick apparently) at joe-morgan.net. The scrolling of the thumbnail section looks fine, but when you attempt to scroll the
Download page lacks links to Google's Ajax libraries API
Is there a reason that http://docs.jquery.com/Downloading_jQuery doesn't link to http://ajax.googleapis.com/ajax/libs/jquery/1.3/jquery.min.js? Jörn
Speeding up $.className.* ?
It seems possible to ever so slightly optimize $.className.add(), $.className.remove(), and $.className.has() by adding an up-front check to see if the `className` parameter is a non-falsy value (not just `undefined`). This would avoid triggering costly processing such as envoking $.each loops, .splits() and functions, and even possibly document reflow (when re-assigning unchanged values to an element). One could also check for the existence of element.className before attempting to remove any classNames.
Is jquery still not handling namespaces?
I've been working on a project that uses namespaced attributes. I had thought, given that the bottom of the "selectors" documentation talks about escaping special characters so they can be used in selectors, that jquery at this point could handle such namespaced attributes. But it seems that it cannot---the enclosed html shows jquery failing to find a namespaced attribute. Am I wrong that jquery can handle namespaces? Or am I doing something else wrong? Is there some way I can efficiently get at
eq(-1) - negative numbers take from end of collection
Would this be a possibility? It would be nice if it worked like JavaScript's Array methods, whereby passing a negative number indicates a position from the end of the array. So, with the following collection: [<a/>, <div/>, <span/>] eq(-1) would return <span/>, eq(-2) would return <div/>... This could be added for the .eq() method and the selector-expression (:eq(..)). Just an idea...
about iterators, closures and scope
Hi guys, for some days I've got a question about usage of scope inside jquery iterators like each. Do you really think that referring to current item using "this" is a good thing? I think it's limitation for who use jquery in object oriented approach. I think it will be better passing current item to closure as an arguments... $("div").each(function(div, index) { console.log(div); //current item console.log(index); //current index console.log(this); // window or custom scope }); <br clear="all">
QUnit
Hi all.<div> </div><div>The second module in the example code isn't working for me. Maybe it's a regression?</div><div><a href="http://docs.jquery.com/QUnit/module#namelifecycle">http://docs.jquery.com/QUnit/module#namelifecycle</a></div> <div> </div><div>this.testData is always undefined. The same is the case in my own tests.</div><div> </div><div>Can anyone confirm? I just downloaded the latest testrunner.js from <a href="http://dev.jquery.com/view/trunk/qunit/testrunner.js">http://dev.jquery.com/view/trunk/qunit/testrunner.js</a></div>
width not correct before positioning
If I try to determine the width of a paragraph, the value is equal to the body. Only after I have positioned it, the value becomes correct. A simple example is below: <html> <head> <script src="http://jquery.com/src/jquery-latest.js"></ script> <script type="text/javascript"> var $jq = jQuery.noConflict(); $jq(document).ready(function() { var $jqBody = $jq("body"); var $jqFooter = $jq("#footer"); alert($jqFooter.width()); $jqFooter.css( {'position':'absolute' , 'left': '0px' , 'top': '0px' } ); alert($jqFooter.width());
Building a cut-down version of jQuery
I have written a small amount of jQuery for a client and they are unhappy with the fact that jQuery contains code that isn't used on the website, so they've told me to remove everything from jQuery except for what I'm using (which is a selector with .find(), .hover(), and .animate() ) I have checked jQuery trunk out of SVN and tried commenting out lines in the make file which refer to .js files I am not using such as ajax.js or support.js but as soon as I comment out one of these lines and run the
.attr("checked", "checked") not working in IE7
in IE7: <code> $('#rb').attr("checked", "checked") </code> does not check a radiobutton, and <code> $('#rb').removeAttr("checked") </code> does not uncheck a radiobutton. These code samples work fine in all the other browsers I've tried, including IE8 and IE8 in IE7 compatibility mode. I also tried using <code> $('#rb').attr("checked",true); </code> and </code> <code> $('#rb').attr("checked",false); </code> but these also do not work in IE7. Any help?
Live and Die support for submit in Internet Explorer
While I haven't done extensive testing to ensure this is the case, it seems that .live('submit') and .die('submit') aren't working for forms in Internet Explorer 8. Can anybody else verify that this is the case?
Two questions about jQuery's inside
Hello everybody, I'm pretty confident with using jQuery but now I'd like to improve my understanding of the librarie's code itself. I sometime see an alternative way of writing portions of code but I'm pretty sure there is a good reason that it is the way it is... I would just like to understand. 1. The function hasClass is written this way: hasClass: function( selector ) { return !!selector && this.is( "." + selector ); }, Why not simply testing the className against the selector: return !!selector
prototypal inheritance as part of jQuery core?
Hi. If it hasn't been already considered (and rejected), I'd like to float the idea of adding support for prototypal inheritance into the jQuery core library. Something like this... jQuery.beget = function (proto, props) { var F = function () {}; F.prototype = proto; var instance = new F(); return props ? $.extend(instance, props) : instance; }; ...becomes immensely powerful - especially during plugin development when allowing users to extend/override default options options = $.beget($.myplugin.defaults,
ajax() with method "PUT" - missing payload
Hi, during the update of one of my projects to the latest svn checkout (r6493) I ran into a confusing problem with the ajax() method. All calls with method "PUT" don't deliver any payload. Because of this problem I compared the svn version with latest stable release (1.3.2). 1.3.2 (working): xhr.send(s.data); 1.3.3pre (not-working): xhr.send( (type === "POST") ? s.data : null ); changed(working): xhr.send( (type === "POST" || type === "PUT") ? s.data : null ); Did I miss something or is this an unintentional
Change :odd and :even to behave like :nth-child(odd) and :nth-child(even)
When adding tablesorter to my site today, I came across a very counter- intuitive behaviour of two of jQuery's selectors: ":odd" and ":even". While it is clearly documented that they do start counting at zero, there seems to be little reason (apart from backwards compatibility) to label odd elements as :even, and even elements as :odd. Furthermore, the ease of typing of :odd and :even instead of :nth-child (*), make them the first choice of developers (such as tablesorter's), who might expect more
$.extend with deep copy affects first obj
Hi, I'm using $.extend with the deep copy option, but when I recognized strange issues in my app while using $.extend I do some research with the used objects and ended with a result like this: http://gist.github.com/167224 This problem only occures in the latest svn checkout (r6529). with regards alx
Bug
Hi I found a very big bug in jquery ui 1.7.2 please run this code and see what happend: /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// <!doctype html> <html lang="en"> <head> <title>jQuery UI Draggable - Default functionality</title> <link type="text/css" href="http://jqueryui.com/themes/base/ ui.all.css" rel="stylesheet" /> <script type="text/javascript" src="http://jqueryui.com/
hide() with 0ms with not call callback
If you call hide() on an element with a 0ms animation time the callback will not be called. Now, I know this doesn't make sense in application as a $e.hide(0, callback) would imply a synchronous action, but it was inconvenient that I was just debugging hide/show timers and noticed that a 0-ms animation time yields a hide() without the callback. Here is an example: http://pastebin.com/m3cb285b2
Bug with :hidden selector and tbody in Internet Explorer
Hi, I am experiencing a bug (IMHO) with the :hidden selector in IE. Here is my sample code: <script type="text/javascript"> $(function () { $('#hidden').hide (); alert ($('#hidden').is(':hidden')); }); </script> <table> <tbody id="hidden"> <tr><td>foo</td></tr> <tr><td>bar</td></tr> </tbody> </table> The code first hides the tbody and then checks "is(':hidden')". In Firefox, Chrome and Safari it works correctly, but in IE it alerts "false" (checked in IE 6 and IE 8).
Object is undefined - any insight appreciated.
I posted this to the jQuery en list but think it might be relevant to the devs as well. And I would appreciate any insight that the development community has. FireBug is reporting this error. jquery.js (line 3633) object is undefined [Break on this error] var name, i = 0, length = object.length;\n I am using jQuery 1.3.2 Here is my code. var that=this; jQuery.ajax({ type : "POST", dataType : "json", url : "js/tsbtw-object.js", success : function(data, statusText){ var verbArray = data.verbs; var
how a extension works after mozilla runs?
hi, i try to get an extension which remembers the last choice and according to it works automaticly for a new tab or a new window (after all windows closes).. i use XUL to create a button and a window.. using them the extention works for current tabs, but i could not achive it works without a button.. I hope you have some hints about my problem, thanks..
Global event bindind/triggering namespaces behavior
Hi, I recently posted a message about event binding syntax, but the point I want to discuss is more foundamental. I've been surprised to see the namespace syntax around events : At this time, jquery manages only one level of namespace ( no subnamespace ) and the namespaces are put after event names : $(obj).bind( 'event.namespace1.namespace2' ); $(obj).trigger( 'event' ) // triggers all .. In all languages I know, namespaces are put to the left, and the syntax a.b.c signifies c child namespace of
Recursive $.extend should manage loops
Hi, I've got loops in my objects relations. Example : var father = { child : {} } father.child.father = father; $.extends( true, {}, father ) causes a infinite loop. Jquery should reproduce loops. Regards, Ludovic
Ajax Requests Throw Error If User Clicks a Link on a Page While the Request Is Still Active
Here's a sample to demo the issue: http://homepage.mac.com/zacware/xhr_bug/xhr_bug.htm We deployed our intranet using FireFox 1 and FireFox 2 years ago. These never caused the issue, and everything worked great. But now in trying to use FireFox 3 and Safari 4, we are getting error messages all over the place. When this happens, we get a readystate of 4 and a status of 0. I would like to think there would be an "abort" error code like when you get a 404 for a file not found. My original understanding
Drag and Drop - Div Position
Hi All, I developing an asp.net application where i allow user to design the layout and save his settings into database. User can drag and drop objects on the page. I wonder how can i get the position of the DIV object before Drag and the new position after the drop. I hope you have some hints can help to solve my problem. Kind Regards Tamer Ibrahim
Autocomplete Flush Cache
hi I m using that jquery autocomplete library. http://docs.jquery.com/Plugins/Autocomplete It works fine. I wanted to know how long cache will keep a suggestion for a particular pattern. Ex: Say I typed "d".After that there will be an Ajax request and a suggestion list is displayed then matched list for "d " is cached.Which means if I delete the first letter again and type d,It will not generate ajax request.But I found out that , after typing some letters, again if I type "d" it ll cause an Ajax
Bug: selectors with commas in IE 7
I recently posted this bug regarding selectors with commas in IE 7. It includes a minimal test case. http://dev.jquery.com/ticket/4999 I was just wondering if anybody had had the time to look into it. :) -matt
RFC on Bug 4834: Don't set window.$ until the outro
Hey all, I was wondering if anyone had any feedback, comments, or concerns about the fix proposed in Bug 4834 http://dev.jquery.com/ticket/4834). This bug describes a situation where jQuery introduces global variables resulting in possible conflicts with other javascript libraries on the page. The proposed solution is to defer the assignment of global variables until the end of the jQuery library definition. Thanks!
Changes to closest (#6507) breaks $(event.target).closest(...) in event handlers
Any event handlers that follow this pattern no longer work: $('.container').bind('click', function(event) { $(event.target).closest('.clickable').doSomething(); }); as the context is set to event.target Demo: http://jsbin.com/ataxe Ticket: http://dev.jquery.com/ticket/4986
Obtaining original function from $.live()
Hello all, I'm wondering if it is possible to obtain the original function that someone has added to a document using $.live()? When you use a 'regular' event binding, jQuery stores the original function in (for example) jQuery.cache[3].events.click[6] (=function). However, with the live() events, the function stored here is simply a liveEventHandler() wrapper. So does jQuery store the original function somewhere, or is it just referenced in that handler function and there is no access to it? Many
Next Page