| *** Quits: tronhammer (~Adium@ip184-187-160-197.sb.sd.cox.net) (Quit: Leaving.) | 00:34 | |
| *** Joins: louisremi (~louisremi@mon69-3-87-90-54-237.dsl.sta.abo.bbox.fr) | 01:04 | |
| *** Quits: louisremi (~louisremi@mon69-3-87-90-54-237.dsl.sta.abo.bbox.fr) (Read error: Connection reset by peer) | 01:06 | |
| *** Quits: gavin_huang (~gravof@125.115.185.231) (Read error: Connection reset by peer) | 01:23 | |
| *** Quits: temp01 (~temp01@unaffiliated/temp01) (Ping timeout: 246 seconds) | 01:24 | |
| *** Quits: bot-t (~bot-t@unaffiliated/temp01/bot/bot-t) (Ping timeout: 244 seconds) | 01:24 | |
| *** Joins: gavin_huang (~gravof@206.253.164.145) | 01:25 | |
| *** Joins: soc42 (~soc42@HSI-KBW-46-237-193-8.hsi.kabel-badenwuerttemberg.de) | 01:35 | |
| *** Quits: gavin_huang (~gravof@206.253.164.145) (Read error: Connection reset by peer) | 01:47 | |
| *** Joins: gavin_huang (~gravof@206.253.164.145) | 01:47 | |
| *** Joins: bot-t (~bot-t@unaffiliated/temp01/bot/bot-t) | 01:48 | |
| *** Quits: bot-t (~bot-t@unaffiliated/temp01/bot/bot-t) (Disconnected by services) | 01:48 | |
| *** Joins: bot-t1 (~bot-t@unaffiliated/temp01/bot/bot-t) | 01:48 | |
| *** Quits: bot-t1 (~bot-t@unaffiliated/temp01/bot/bot-t) (Excess Flood) | 01:48 | |
| *** Joins: bot-t (~bot-t@unaffiliated/temp01/bot/bot-t) | 01:49 | |
| *** Joins: temp01 (~temp01@unaffiliated/temp01) | 01:51 | |
| *** Quits: snover (~Adium@unaffiliated/snover) (Quit: Leaving.) | 01:52 | |
| *** Quits: jovrtn (~Jesse@12.17.188.147) (Read error: Connection reset by peer) | 02:28 | |
| *** Joins: jovrtn (~Jesse@12.17.188.147) | 02:28 | |
| *** Joins: temp02 (~temp01@unaffiliated/temp01) | 02:49 | |
| *** Quits: temp01 (~temp01@unaffiliated/temp01) (Ping timeout: 250 seconds) | 02:50 | |
| *** Joins: Krinkle (~Krinkle@wikimedia/Krinkle) | 03:08 | |
| *** Joins: erichynds (~ehynds@64.206.121.41) | 05:10 | |
| *** Joins: gibson042 (~rgibson@nat-07-mht.dyndns.com) | 05:19 | |
| *** Quits: gavin_huang (~gravof@206.253.164.145) (Ping timeout: 245 seconds) | 05:31 | |
| *** Joins: kswedberg (~kswedberg@173-162-44-162-michigan.hfc.comcastbusiness.net) | 05:41 | |
| *** Quits: kswedberg (~kswedberg@173-162-44-162-michigan.hfc.comcastbusiness.net) (Read error: Connection reset by peer) | 05:42 | |
| *** Joins: kswedberg1 (~kswedberg@173-162-44-162-michigan.hfc.comcastbusiness.net) | 05:42 | |
| *** Quits: kswedberg1 (~kswedberg@173-162-44-162-michigan.hfc.comcastbusiness.net) (Read error: Connection reset by peer) | 05:46 | |
| *** Joins: colinclark (~colin@bas2-toronto09-1167985791.dsl.bell.ca) | 05:47 | |
| *** Joins: kswedberg (~kswedberg@173-162-44-162-michigan.hfc.comcastbusiness.net) | 05:48 | |
| *** Joins: remysharp (u4345@gateway/web/irccloud.com/x-leynyubrzzrjngxe) | 06:11 | |
| *** Joins: danzik17 (~danzik17@164.55.254.106) | 06:12 | |
| *** Quits: melter (~Melter@2001:4930:116:0:21c:c0ff:feef:eaf5) (Remote host closed the connection) | 06:30 | |
| *** Joins: vynsynt (~7hz@rma2.org) | 06:32 | |
| *** Joins: rwaldron (~rwaldron@75-150-66-249-NewEngland.hfc.comcastbusiness.net) | 06:42 | |
| *** Joins: miketaylr (~miketaylr@cpe-70-112-101-224.austin.res.rr.com) | 06:45 | |
| *** Joins: rpflo (~rpflo@c-76-23-59-19.hsd1.ut.comcast.net) | 06:48 | |
| *** Joins: Justin_o (justin@nat/ocadu/x-obgqhbjrevjzpdmv) | 06:53 | |
| *** Quits: Justin_o (justin@nat/ocadu/x-obgqhbjrevjzpdmv) (Client Quit) | 06:57 | |
| *** Joins: Justin_o (justin@nat/ocadu/x-lxbvvjutujrqkatj) | 06:57 | |
| *** Quits: colinclark (~colin@bas2-toronto09-1167985791.dsl.bell.ca) (Quit: colinclark) | 07:09 | |
| *** Quits: rpflo (~rpflo@c-76-23-59-19.hsd1.ut.comcast.net) (Remote host closed the connection) | 07:15 | |
| *** Joins: rpflo (~rpflo@c-76-23-59-19.hsd1.ut.comcast.net) | 07:17 | |
| *** Joins: michelled (michelled@nat/ocadu/x-cgsbevrshosnrtab) | 07:28 | |
| *** Quits: michelled (michelled@nat/ocadu/x-cgsbevrshosnrtab) (Client Quit) | 07:29 | |
| *** Joins: michelled (michelled@nat/ocadu/x-uuavlsfqcaoixlcr) | 07:29 | |
| *** Quits: rpflo (~rpflo@c-76-23-59-19.hsd1.ut.comcast.net) (Remote host closed the connection) | 07:29 | |
| *** Joins: David_Souther (~southerd@wsip-98-188-154-66.dc.dc.cox.net) | 07:31 | |
| kborchers | should serializeArray() include the submit button of the form if it is being called in the submit event handler for the form? | 07:31 |
|---|---|---|
| kborchers | the docs for serializeArray() say "No submit button value is serialized since the form was not submitted using a button." | 07:31 |
| kborchers | but the form was submitted using a button and the submit button is not in the array | 07:32 |
| kborchers | using the same handler with jQuery Mobile does include the submit button in the array so I am trying to figure out where to file the issue :) | 07:33 |
| kborchers | http://jsfiddle.net/kborchers/Amf5x/3/ vs http://jsfiddle.net/kborchers/Amf5x/4/ | 07:34 |
| *** Joins: mikeycgto (~mikeycgto@pdpc/supporter/active/mikeycgto) | 07:36 | |
| *** Joins: rtgibbons (~textual@67-131-94-2.dia.static.qwest.net) | 07:43 | |
| kborchers | i filed the issue on mobile since it differs from core but i would appreciate any thoughts you folks have | 07:44 |
| *** Joins: snover (~Adium@71-34-15-249.mpls.qwest.net) | 07:52 | |
| *** Quits: snover (~Adium@71-34-15-249.mpls.qwest.net) (Changing host) | 07:52 | |
| *** Joins: snover (~Adium@unaffiliated/snover) | 07:52 | |
| *** Joins: jholloman (~chatzilla@65-122-249-186.dia.static.qwest.net) | 07:55 | |
| *** Quits: rtgibbons (~textual@67-131-94-2.dia.static.qwest.net) (Quit: Computer has gone to sleep.) | 07:55 | |
| *** Joins: rtgibbons (~textual@67-131-94-2.dia.static.qwest.net) | 08:01 | |
| *** Krinkle is now known as Krinkle-away | 08:09 | |
| *** Joins: jqcommit (~jqcommit@sh1-ext.rs.github.com) | 08:15 | |
| jqcommit | [qunit] jzaefferer pushed 1 new commit to master: http://git.io/yofujA | 08:15 |
| jqcommit | [qunit/master] Modify "Running..." to display test name. Fixes #220 - Rick Waldron waldron.rick@gmail.com | 08:15 |
| *** Parts: jqcommit (~jqcommit@sh1-ext.rs.github.com) () | 08:15 | |
| *** Joins: rpflo (~rpflo@216.51.73.6) | 08:16 | |
| *** Krinkle-away is now known as Krinkle | 08:17 | |
| *** Quits: rtgibbons (~textual@67-131-94-2.dia.static.qwest.net) (Quit: Computer has gone to sleep.) | 08:18 | |
| *** Quits: rpflo (~rpflo@216.51.73.6) (Remote host closed the connection) | 08:18 | |
| *** Joins: rpflo (~rpflo@216.51.73.6) | 08:19 | |
| *** Joins: AzaToth (~azatoth@wikipedia/AzaToth) | 08:20 | |
| jq-jenkins | Project QUnit build #98: STILL FAILING in 10 min: http://swarm.jquery.org:8080/job/QUnit/98/ | 08:26 |
| jq-jenkins | joern.zaefferer: Modify "Running..." to display test name. Fixes #220 | 08:26 |
| *** Joins: colinclark (~colin@205.211.168.52) | 08:30 | |
| *** Joins: colinclark_ (colin@nat/ocadu/x-bxsmjvhgftrxkgda) | 08:31 | |
| *** Quits: Flo0815 (~Flo0815@188-195-19-225-dynip.superkabel.de) () | 08:35 | |
| *** Quits: colinclark (~colin@205.211.168.52) (Ping timeout: 276 seconds) | 08:35 | |
| *** colinclark_ is now known as colinclark | 08:35 | |
| *** Joins: rtgibbons (~textual@67-131-94-2.dia.static.qwest.net) | 08:41 | |
| *** Quits: rpflo (~rpflo@216.51.73.6) (Remote host closed the connection) | 08:43 | |
| *** Joins: sindresorhus_ (~sindresor@82.147.51.146) | 08:49 | |
| Krinkle | . | 08:52 |
| Krinkle | jzaefferer: Is the browserstack thing not working? | 08:53 |
| Krinkle | I thought it would populate the swarm with needed browsers | 08:53 |
| *** Quits: j_simon (~j_simon@firewall.know-center.tu-graz.ac.at) (Quit: Linkinus - http://linkinus.com) | 08:55 | |
| jzaefferer | Krinkle: Can't tell, I need to dig into that whole setup | 08:55 |
| Krinkle | I'm nearing completion at mediawiki with some bug fixes so that mediawiki can move into the next phase with its js-testing | 08:56 |
| Krinkle | that phase includes 1) integrating testswarm with Jenkins , 2) using browerstack | 08:56 |
| Krinkle | I would like to not duplicate efforts that you (plural you) have already done on jQuery | 08:56 |
| Krinkle | are those 2 things up to date and in a public repo? | 08:57 |
| Krinkle | (wether they work properly or not) | 08:57 |
| jzaefferer | Krinkle: Yeah, its all in repos | 08:57 |
| Krinkle | ij | 08:58 |
| Krinkle | ok :) | 08:58 |
| jzaefferer | Jenkins plugin: https://github.com/appendto/jenkins-testswarm - Justin Obara (Justin_o) is working on that, see http://jquerytesting.pbworks.com/w/page/47944122/Hot%20Deploy%20Jenkins-Testswarm%20Plugin | 08:58 |
| jzaefferer | testswarm-browserstack: https://github.com/clarkbox/testswarm-browserstack | 08:58 |
| jzaefferer | there's one more piece, the cronjob | 08:59 |
| Krinkle | ok | 09:01 |
| Krinkle | jzaefferer: btw, looking at prettyDate. Looks like the repo you have has progressed a lot from the version JohnResig released in 2007 and 2011 respectively | 09:02 |
| Krinkle | There seems to be 2 (or more) versions of the ISO format out there. Looks like the one you use in the tests and the on PHP outputs don't match entirely | 09:03 |
| Krinkle | there's a suddle difference, I'll see if I can get more details | 09:03 |
| *** Joins: stevecrozz (~stevecroz@173.227.0.2) | 09:04 | |
| jzaefferer | Okay, that would help | 09:04 |
| jzaefferer | I didn't know there was a 2011-Resig release | 09:04 |
| Krinkle | me neither | 09:05 |
| Krinkle | when I opened the url from his blog post to update | 09:05 |
| Krinkle | it showed © 2011 | 09:05 |
| Krinkle | the 2007 version is only in the testswarm archive | 09:05 |
| Krinkle | I simply updated it from source | 09:05 |
| Krinkle | http://ejohn.org/files/pretty.js | 09:06 |
| Krinkle | http://ejohn.org/blog/javascript-pretty-date/ | 09:06 |
| *** Joins: mack____ (~mack@89.136.123.214) | 09:06 | |
| mack____ | hi | 09:07 |
| mack____ | I think I found a regression between jQuery 1.7.1 and 1.7.2. | 09:08 |
| mack____ | The simplest code that triggers it is: $(function() { console.log("result of data", $("<div/>").data("non_existent_key", undefined) ); }); | 09:08 |
| mack____ | it says result of data undefined in jQuery 1.7.1 | 09:08 |
| mack____ | and result of data [div] in jQuery 1.7.2 | 09:08 |
| mack____ | can someone check it to see if they can duplicate ? | 09:08 |
| Krinkle | hm.. | 09:11 |
| Krinkle | I think that is not a bug, it is a bug fixed | 09:11 |
| Krinkle | Imagine you have var x = getValFromSomewhere() | 09:12 |
| Krinkle | and you do $(…).date("foo", x).css(.., ..).addClass(...); | 09:12 |
| Krinkle | undefined is treated like a value not as a missing argument | 09:12 |
| Krinkle | so it should return the jQuery collection set, not the new value | 09:12 |
| Krinkle | [div] | 09:12 |
| Krinkle | does that make sense? | 09:12 |
| gnarf | i don't remember seeing a ticket on that, lemme hunt | 09:13 |
| mack____ | 1 sec to parse | 09:14 |
| Krinkle | previously only .css() did this, now all get/set do it | 09:15 |
| Krinkle | I remember reading about it in the release notes | 09:15 |
| mack____ | hmm, I suppose it makes sense. If you want to set the data propery you would use data("foo", '') and that would return '' | 09:16 |
| Krinkle | it should return the jQuery object, not ''. so that you can chain more calls, just like that's possible with other set-methods | 09:16 |
| Krinkle | e.g. $(..).attr('foo', 'bar') returns the jQuery array as well | 09:16 |
| *** Quits: jovrtn (~Jesse@12.17.188.147) (Quit: jovrtn) | 09:17 | |
| *** Joins: jovrtn (~Jesse@12.17.188.147) | 09:17 | |
| gnarf | https://github.com/jquery/jquery/commit/6c2a501de40a5f6b3ad382e2d309e5a10fce04d0 | 09:17 |
| socialhapy | ★ Commit on jquery by dmethvin (3m, 2w ago): Fix #5571. Setters should treat `undefined` as a no-op and be chainable. | 09:17 |
| mack____ | I guess it makes sense. I found this is a plugin that stopped working with 1.7.2 | 09:18 |
| Krinkle | I would expect it fixes more things then it brakes | 09:18 |
| Krinkle | how could it brake something? | 09:18 |
| mack____ | also, when I was reading the docs I read http://api.jquery.com/jQuery.data/ | 09:18 |
| mack____ | and it says " Returns the value that was set." | 09:18 |
| Krinkle | Yes | 09:18 |
| Krinkle | when you give it 1 argument | 09:18 |
| Krinkle | not when you give it two | 09:18 |
| Krinkle | $(…).data('key') will give the value (and undefined if there is none) | 09:19 |
| Krinkle | that is still the case, right? | 09:19 |
| Krinkle | mack____: ah, no, this is something else | 09:19 |
| Krinkle | mack____: that documentation if for jQuery.data | 09:19 |
| Krinkle | not $.fn.data | 09:19 |
| mack____ | well, it was returning undefined | 09:19 |
| Krinkle | jQuery.data( element, key, value ) | 09:19 |
| Krinkle | yes and still does | 09:19 |
| mack____ | yeah, that got me too, the difference in docs | 09:20 |
| Krinkle | jQuery( element ).data( key, value ) | 09:20 |
| Krinkle | jQuery.data should not return the [div] | 09:20 |
| Krinkle | $.fn.data should always return the elements | 09:20 |
| *** Quits: kswedberg (~kswedberg@173-162-44-162-michigan.hfc.comcastbusiness.net) (Ping timeout: 246 seconds) | 09:21 | |
| mack____ | I think that's what the bug fixed, that it wasn't returning the elements | 09:21 |
| Krinkle | yep | 09:22 |
| mack____ | and a plugin was depending on the undefined result | 09:22 |
| *** Quits: jovrtn (~Jesse@12.17.188.147) (Ping timeout: 252 seconds) | 09:22 | |
| Krinkle | mack____: link? | 09:22 |
| ajpiano | mack____: http://bugs.jquery.com/ticket/5571 | 09:22 |
| mack____ | http://rateit.codeplex.com/ | 09:22 |
| mack____ | var itemdata = function (key, value) { return item.data('rateit' + capitaliseFirstLetter(key), value); }; | 09:23 |
| mack____ | around line 39 | 09:23 |
| mack____ | and it checks for undefined for initialization at line 68 : if (!itemdata('init')) { | 09:24 |
| mack____ | ajpiano: thanks | 09:24 |
| gnarf | http://bugs.jquery.com/ticket/5571 | 09:24 |
| Krinkle | mack____: Then this code will have been broken before 1.7.2 as well | 09:24 |
| Krinkle | because if value was anything other than 'undefined' it would have return the jQuery set | 09:24 |
| Krinkle | the bug fixed in 1.7 was that if .data() was called to set an undefined value, it didn't return the elements | 09:25 |
| mack____ | hmm, actually it works with 1.7.1 | 09:25 |
| Krinkle | it may be a different bug | 09:25 |
| Krinkle | or conidencence if 'init' is never defined | 09:26 |
| Krinkle | coincidence* | 09:26 |
| Krinkle | mack____: it looks like "itemdata" is a function that needs two arguments | 09:26 |
| Krinkle | to set data, not to get data | 09:26 |
| gnarf | mack____: just fyi 'rateit-'+key should camelCase the property name automatically | 09:27 |
| mack____ | Krinkle: indeed. And when it's cheking if it's already initialized it's checking with itemdata("init") | 09:27 |
| mack____ | and that means the second parameter to itemdata and to data is undefined | 09:27 |
| *** Joins: kswedberg (~kswedberg@173-162-44-162-michigan.hfc.comcastbusiness.net) | 09:27 | |
| mack____ | I think it's bug #5571 | 09:28 |
| Krinkle | indeed | 09:28 |
| Krinkle | but I don't think the writer of this code meant for that behavior, just forgotten to fix and it didn't fail due to #5571 | 09:28 |
| Krinkle | easily fixed by using data() as getter to check the value | 09:28 |
| mack____ | or maybe he read the documetation for http://api.jquery.com/jQuery.data/ instead of http://api.jquery.com/data/ ? :) | 09:29 |
| Krinkle | Or forward the logic of jQuery | 09:29 |
| Krinkle | No | 09:29 |
| Krinkle | because .data(.., ..) never returns the value set | 09:29 |
| Krinkle | never did, not even before that bug was fixed | 09:29 |
| mack____ | yes, but http://api.jquery.com/jQuery.data/ does | 09:30 |
| gnarf | https://github.com/jquery/jquery/pull/608/files#L9R225 | 09:30 |
| socialhapy | ★ Pull request on jquery by gibson042 (4m, 1w ago): Setter methods chainable with value=undefined. Fixes #5571. | 09:30 |
| mack____ | http://api.jquery.com/jQuery.data/ "Store arbitrary data associated with the specified element. Returns the value that was set." | 09:30 |
| Krinkle | anyway, the easiest solution is to either create a separate function for get and for set, or copy the jQuery logic (i.e. inside itemdata-function, check if ( arguments.length === 2 ) { .data( … + '', .. ); } else { return .data( '' + ''); | 09:31 |
| mack____ | so maybe he misread the docs. Anyways, that's what I did, just wanted to know if it's a regression in jQuery or a bug in the plugin | 09:31 |
| mack____ | seems the plugin needs an update :) | 09:31 |
| Krinkle | mack____: I know, but if he really did read the wrong documentation, it doesn't make sense. Because if he would call itemdata('anything', 'foo') and then itemdata('anything') it would NOT return 'foo'. | 09:32 |
| Krinkle | but alright, issue solved | 09:32 |
| mack____ | Krinkle: that's how I misread it at first, that's why I wondered ;) | 09:32 |
| mack____ | thanks for your help | 09:32 |
| *** Quits: rtgibbons (~textual@67-131-94-2.dia.static.qwest.net) (Quit: Computer has gone to sleep.) | 09:34 | |
| *** Joins: rtgibbons (~textual@67-131-94-2.dia.static.qwest.net) | 09:37 | |
| *** Quits: kswedberg (~kswedberg@173-162-44-162-michigan.hfc.comcastbusiness.net) (Quit: Leaving.) | 09:40 | |
| *** Joins: tronhammer (~Adium@209-234-189-154.static.twtelecom.net) | 09:41 | |
| *** Quits: sindresorhus_ (~sindresor@82.147.51.146) (Quit: Leaving...) | 09:53 | |
| *** Joins: deAtog (~atog@99-34-136-167.lightspeed.bcvloh.sbcglobal.net) | 09:55 | |
| *** Joins: kswedberg (~kswedberg@173-162-44-162-michigan.hfc.comcastbusiness.net) | 10:04 | |
| deAtog | I think I found a bug in jQuery 1.7.2 .. $.isPlainObject will return false for any object that has a nodeType attribute IE: $.isPlainObject({nodeType:'leaf'}) will return false. The only solution I can come up with is checking !obj.hasOwnProperty || (obj.nodeType && !obj.hasOwnProperty('nodeType')) | 10:05 |
| gnarf | rwaldron: you got an opinion on that one? ^^^ | 10:09 |
| ajpiano | that's def kind of a weird thing | 10:10 |
| ajpiano | cause it's like, a duck test, and you're deliberately defeating it | 10:10 |
| deAtog | ajpiano: what are you referring to ? | 10:11 |
| ajpiano | do you know what a duck test is | 10:11 |
| gnarf | {nodeType:'leaf'} --- it looks like a duck | 10:11 |
| gnarf | aka a HTMLElement | 10:12 |
| deAtog | right.. but it's not.. just because it looks like a duck doesn't make it a duck | 10:12 |
| gnarf | or whatever the baseclass of that is | 10:12 |
| Eviltwin | String({nodeType:'leaf'}) produces "[object Object]" while String(document.body) produces "[object HTMLBodyElement]" | 10:13 |
| Eviltwin | Could that be used as a test perhaps? | 10:13 |
| Eviltwin | I guess I should say it produces those in the two browsers I tested here | 10:13 |
| Eviltwin | Neither of which is IE | 10:13 |
| gnarf | Eviltwin / deAtog - either method is going to be tricky to cover across all of the browsers we support I'm thinking | 10:13 |
| deAtog | gnarf: from what I've read, IE < 9 doesn't support calling hasOwnProperty on DOM objects.. thus the first test.. | 10:14 |
| Eviltwin | deAtog: There's already a try-catch involved there | 10:15 |
| Eviltwin | Maybe it's justified doing another for hasOwnProperty? | 10:15 |
| deAtog | Eviltwin: that's a good point, the test for hasOwnProperty could be ignored then and simply do obj.nodeType && !obj.hasOwnProperty('nodeType') | 10:16 |
| deAtog | for the above case, hasOwnProperty would return true for the object I gave while false for DOM objects as nodeType is inherited.. but it remains to be seen if that's true in all browsers | 10:18 |
| gnarf | deAtog: http://cl.ly/1q0U313Y3k0L2n2A2G2A | 10:18 |
| gnarf | deAtog: sorry to burst that bubble | 10:19 |
| deAtog | gnarf:what browser? | 10:20 |
| gnarf | deAtog: Chrome | 10:20 |
| gnarf | test yourself in whatever: http://jsconsole.com/?document.createElement(%22div%22).hasOwnProperty(%22nodeType%22)%3B | 10:21 |
| gnarf | also safari: http://cl.ly/3z1v390x40342o033l3z and opera http://cl.ly/3z1v390x40342o033l3z | 10:23 |
| gnarf | so basically, everything but firefox | 10:23 |
| deAtog | gnarf: hrm.. I guess it'll just remain broken then..' | 10:24 |
| Eviltwin | deAtog: Or you could look at the string test | 10:25 |
| *** Quits: rtgibbons (~textual@67-131-94-2.dia.static.qwest.net) (Ping timeout: 248 seconds) | 10:27 | |
| deAtog | Eviltwin: yes, but it's something that should be addressed in $.isPlainObject as it affects other things like $.extend with deep cloning | 10:27 |
| *** Joins: rtgibbons (~textual@64-58-7-174.sta.mho.net) | 10:29 | |
| rwaldron | gnarf $.isPlainObject wasn't intended to handle weird corner cases where users are checking against cases we can't account for | 10:31 |
| rwaldron | "nodeType" is a special property name | 10:31 |
| *** Joins: gyzmodo (x@89.146.92.54) | 10:31 | |
| rwaldron | with special meaning | 10:31 |
| gyzmodo | hello ladies and gentlemen | 10:31 |
| rwaldron | if it's messing up your program, I suggest not using something that has an existing meaning | 10:32 |
| gyzmodo | I've translated jQuery UI datepicker plugin | 10:32 |
| rwaldron | also, this is def not a bug if we're intentionally looking for it | 10:32 |
| rwaldron | if ( !obj || jQuery.type(obj) !== "object" || obj.nodeType || jQuery.isWindow( obj ) ) { | 10:32 |
| gyzmodo | Now how can i upload that to official jQuery UI website | 10:32 |
| rwaldron | gyzmodo please see #jqueryui-dev | 10:33 |
| *** Quits: rtgibbons (~textual@64-58-7-174.sta.mho.net) (Ping timeout: 244 seconds) | 10:33 | |
| gyzmodo | thanks a lot | 10:33 |
| deAtog | rwaldron: then maybe it should be documented that $.extend will produce unexpected results for objects containing a "nodeType" property | 10:34 |
| *** Joins: rtgibbons (~textual@67-131-94-2.dia.static.qwest.net) | 10:37 | |
| *** Joins: sindresorhus_ (~sindresor@82.147.51.146) | 10:44 | |
| deAtog | gnarf: what about obj instanceof HTMLElement ? | 10:49 |
| gnarf | deAtog: do you have browserstack ? | 10:50 |
| gnarf | deAtog: or have you ever signed up for their trial? if not - get a trial, and throw a jsconsole url in and go hog wild testing :) | 10:50 |
| Eviltwin | Do you know about the cross-frame issue with instanceof? | 10:50 |
| rwaldron | deAtog why? | 10:52 |
| rwaldron | why should jQuery concern itself with documenting every single property that devs should know better then to use? | 10:53 |
| rwaldron | I can't imagine a program that _required_ a custom property named "nodeType" | 10:54 |
| deAtog | it's not whether or not it requires a custom property named "nodeType" but whether an object with such a property is handled correctly | 10:55 |
| ajpiano | i can see that a brief note in the docs would be useful | 10:56 |
| ajpiano | but i can't see us changing the test, realistically | 10:56 |
| ajpiano | it's much easier to have people just use a different property name :p | 10:56 |
| Krinkle | nodeType is pretty much the defacto standard way to check if an object is a Node object. If changed here it should probably be fixed centrally | 11:01 |
| Krinkle | perhaps an isNodeObject method? | 11:02 |
| Krinkle | (HTMLElement >Element > Node > … > Object) | 11:02 |
| Krinkle | I think it is a fair point that a plain object can contain a nodeType property. "node" is fairly generic | 11:02 |
| rwaldron | Krinkle host objects are almost guaranteed to be undetectable on at least one platform | 11:03 |
| rwaldron | i wasted a week of my life with this | 11:03 |
| Krinkle | I can imagine a web application to manage VMs or "nodes" and an AJAX JSON request responding with { "nodeName" : .. , "nodeType" .. } | 11:03 |
| gnarf | Krinkle: also, +1 fn call per loop on a lot of .nodeType tests... | 11:03 |
| gnarf | lapgnarf:src gnarf$ grep nodeType *.js | wc | 11:04 |
| gnarf | 74 762 5031 | 11:04 |
| Krinkle | gnarf: if you rather repeat the logic everywhere | 11:04 |
| Krinkle | I don't care | 11:04 |
| gnarf | 74 lines of code contain .nodeType | 11:04 |
| Krinkle | but !!obj.nodeType is too generic imho | 11:04 |
| *** Joins: henrikkok (~henrikkok@3306ds3-amb.0.fullrate.dk) | 11:04 | |
| gnarf | most are just .nodeType === 1 | 11:05 |
| Krinkle | its too generic in both cases, both to decide it is an element and to decide it is a plain object | 11:05 |
| gnarf | because jQuery is picky about its node type | 11:05 |
| gnarf | Krinkle: its the jQuery standard... we've been using it since like 1.3 at a minimum to detect elements | 11:05 |
| Krinkle | isn't instanceof an object? | 11:05 |
| Krinkle | isn't instanceof an option? | 11:05 |
| Krinkle | hm.. or not, IE issues | 11:05 |
| gnarf | Krinkle: cross window sucks, and also what rwaldron said | 11:05 |
| rwaldron | Krinkle i'd argue that that { "nodeName" : .. , "nodeType" .. } is shitty data | 11:06 |
| Krinkle | what? | 11:06 |
| rwaldron | if i know an object is a :node" | 11:06 |
| rwaldron | "node" | 11:06 |
| gnarf | "rwaldron: Krinkle host objects are almost guaranteed to be undetectable on at least one platform" | 11:06 |
| rwaldron | then i dont need to prefix all properties with the word "node" | 11:06 |
| rwaldron | { name: "", type: "" } | 11:06 |
| rwaldron | much better | 11:06 |
| gnarf | { node: {name: "" , type: "" } } | 11:07 |
| rwaldron | gnarf also wasted about a week of his life on this same shit | 11:07 |
| Krinkle | I didn't invent it | 11:07 |
| rwaldron | we're not making it up | 11:07 |
| Krinkle | but discussing peoples naming conventions is not something I want to talk about | 11:07 |
| rwaldron | nor are we trying to ruin someone's day | 11:07 |
| gnarf | obj.nodeType is about the best "node detect" out there | 11:07 |
| Krinkle | what if you have an object with both nodeInfo and something else? Well, yes, one "should" create a 2 level object, or whatever, the possibilities are endless | 11:07 |
| rwaldron | gnarf +9001 | 11:07 |
| Krinkle | gnarf: Aren't there other properties? Perhaps test for 2 properties instead of just nodeType | 11:08 |
| Krinkle | ones that are unlikely to appear in the same host object | 11:08 |
| rwaldron | Krinkle this falls under the "Object.prototype won't fix" | 11:08 |
| Krinkle | rwaldron: I disagree. A valid AJAX response could contain a plain object with a nodeType property | 11:08 |
| rwaldron | jQuery wants to make the DOM, Ajax etc manageable | 11:08 |
| Krinkle | how is this related to prototype? | 11:09 |
| gnarf | Krinkle: then what happens when another deAtog shows up with a complaint that his { "nodeType": ..., "otherProp": .... } object acts weird ? | 11:09 |
| gnarf | http://stackoverflow.com/questions/384286/javascript-isdom-how-do-you-check-if-a-javascript-object-is-a-dom-object btw | 11:09 |
| rwaldron | Krinkle conceptually, I'm saying - this isn't jQuery's problem | 11:09 |
| Krinkle | rwaldron: k | 11:09 |
| gnarf | typeof o.nodeType === "number" is a bit more "secure" | 11:10 |
| rwaldron | There are very few things the jQuery can safely use across all platforms | 11:10 |
| rwaldron | gnarf nice one | 11:10 |
| rwaldron | that's pretty good | 11:10 |
| gnarf | but like - really? | 11:10 |
| Krinkle | rwaldron: I think in cases where an element is expected a nodeType check could suffice, but perhaps just in isPlainObject a more elaborate check would be justified? | 11:10 |
| rwaldron | gnarf I could get behind that patch | 11:10 |
| gnarf | then { nodeType: 1 } still fails | 11:10 |
| gnarf | which may or may not be deAtog's issue | 11:10 |
| rwaldron | at least we tried thoguh | 11:10 |
| rwaldron | we can't win em all | 11:10 |
| Krinkle | yeah, nodeType in an AJAX app would likely be a numerical ID or a key phrase. | 11:11 |
| rwaldron | Krinkle i dont want to slow down isPlainObject with another chack | 11:11 |
| rwaldron | check* | 11:11 |
| rwaldron | gnarf's suggestion may actually be faster | 11:11 |
| rwaldron | because an explicit typeof check is highly optimized | 11:11 |
| Eviltwin | Any idea if the String test works? | 11:11 |
| Krinkle | typeof + string comparison is somewhat slow though, not? | 11:12 |
| Krinkle | 2 operations instead of 1 | 11:12 |
| rwaldron | whereas a coerced (foo.nodeType) check has more hoops to jump through internally | 11:12 |
| ajpiano | the average webapp that is being developed today and running into this bug, would still be early enough in its dev cycle that they could easily change the naming convention | 11:12 |
| Krinkle | right | 11:12 |
| rwaldron | Krinkle naw, timmywil proved to me the very same | 11:12 |
| Krinkle | Ah, I see what you mean | 11:12 |
| rwaldron | I also thought it wpuld be slower | 11:12 |
| rwaldron | but the typeof operator only has a table of values to respond with | 11:13 |
| Krinkle | ajpiano: I was thinking more along the lines of a jQuery user getting data from an existing, mature, API and checking isPlainObject at some point later on | 11:13 |
| ajpiano | are there existing mature apis that *actually* use "nodeType" to describe arbitrary data | 11:13 |
| * rwaldron shrugs | 11:13 | |
| ajpiano | sure, it's "possible" but like | 11:13 |
| Krinkle | lets keep it as is, or improve it for performance reason but not the existence of "nodeType" being a problem. I rest my case | 11:14 |
| rwaldron | ajpiano I think we can mitigate the most egregious circumstances with gnarf's suggestion | 11:14 |
| ajpiano | nodeType is so strongly associated with dom elements that if i were designing an API i would probably steer clear of using known dom properties to describe arbitrary data | 11:14 |
| rwaldron | which I hope is becoming a patch as we spea | 11:14 |
| rwaldron | ajpiano +1 | 11:14 |
| Eviltwin | Currently the test starts with !obj || jQuery.type(obj) !== "object" || obj.nodeType || jQuery.isWindow( obj ), right? | 11:14 |
| ajpiano | rwaldron: throw a typeof number and number < 12 in there :p | 11:14 |
| rwaldron | gnarf ^^ hahah | 11:14 |
| gnarf | Eviltwin: http://cl.ly/0N3s3h2h2A3C0n372j36 | 11:14 |
| *** Quits: jholloman (~chatzilla@65-122-249-186.dia.static.qwest.net) (Quit: ChatZilla 0.9.88.1 [Firefox 11.0/20120312181643]) | 11:15 | |
| gnarf | deAtog: did you ever make a bug for this? | 11:15 |
| Eviltwin | Grr | 11:15 |
| Eviltwin | Hmm | 11:15 |
| gnarf | Eviltwin: http://cl.ly/2a3f0x1S2t1O1G0T1Q2F at least String({}) is [object Object] | 11:16 |
| gnarf | oh and <3 <3 <3 browserstak | 11:16 |
| Eviltwin | Huh | 11:16 |
| Eviltwin | Well | 11:16 |
| Eviltwin | That could work, I guess | 11:16 |
| Eviltwin | Store String({}) in a var | 11:16 |
| Eviltwin | Then strictly compare String(obj) to it? | 11:17 |
| gnarf | Eviltwin: i still think thats going to be about 100* more prone to edge cases in rare browsers than typeof obj.nodeType === "number" | 11:17 |
| gnarf | jQuery.type( obj ) should already check [object Object] | 11:17 |
| Eviltwin | But it falls back to "object" if it's not in the table | 11:17 |
| gnarf | which it should ;) | 11:18 |
| Eviltwin | But the table doesn't include every type of DOM element | 11:19 |
| gnarf | (they are all objects after all) | 11:19 |
| Eviltwin | Well yeah | 11:19 |
| Eviltwin | But we're trying to detect plain objects | 11:20 |
| gnarf | which requires ruling out nodes and windows | 11:20 |
| Eviltwin | But we want to rule out nodes and windows, not objects that share a few properties with nodes and windows, right? | 11:21 |
| gnarf | Eviltwin: ducks are ducks | 11:21 |
| gnarf | :) | 11:21 |
| gnarf | hrm | 11:22 |
| gnarf | do textnodes have o.nodeName? | 11:22 |
| Eviltwin | Assuming String(obj) === "[object Object]" is a good test | 11:22 |
| Eviltwin | Replacing the jQuery.type test with that wouldn't be a performance hit, right? | 11:23 |
| gnarf | replacing obj.nodeType with ( typeof obj.nodeType === "number" && typeof obj.nodeName === "string" ) makes it a little more discerning of its ducks | 11:23 |
| gnarf | but like { nodeType: 1, nodeName: "string" } still looks like that duck | 11:24 |
| *** Quits: soc42 (~soc42@HSI-KBW-46-237-193-8.hsi.kabel-badenwuerttemberg.de) (Remote host closed the connection) | 11:25 | |
| *** Parts: vynsynt (~7hz@rma2.org) () | 11:25 | |
| gnarf | deAtog: its a shame you aren't more vocal in this chat.... I'm gonna wait for you to let me know what this object looks like :) | 11:25 |
| Eviltwin | It usually has these: {} | 11:25 |
| Eviltwin | :Dd | 11:25 |
| gnarf | hrm | 11:27 |
| gnarf | that last #jquery message was meant for here | 11:27 |
| gnarf | danheberden: is bugs.jquery.com still using the "trac daemon" mode i set up, or is it back to cgi? | 11:28 |
| deAtog | gnarf: sorry I was busy testing and working with browserstack | 11:28 |
| gnarf | deAtog: would your "object" pass/fail for ( typeof obj.nodeType === "number" && typeof obj.nodeName === "string" ) | 11:29 |
| danheberden | gnarf i think so? it was failing for me before | 11:29 |
| danheberden | and still fails for ui | 11:29 |
| danheberden | i think mike might have fixed it tho | 11:29 |
| rwaldron | gnarf I can get behind ( typeof obj.nodeType === "number" && typeof obj.nodeName === "string" ) | 11:30 |
| deAtog | gnarf: I don't have an object to actually work with.. it's more hypothetical than anything.. I just thought testing for obj.nodeType was odd behavior and could easily cause someone a lot of headaches | 11:32 |
| rwaldron | "testing for obj.nodeType was odd behavior " ... which it's not | 11:32 |
| rwaldron | at all. | 11:32 |
| gnarf | and i mean - this "bug" has been there for a long long time... not sure if its worth the +3 gzip bytes or whatever... specially if deAtog doesn't actually have a "real world" case | 11:32 |
| rwaldron | hunting for corner case bugs is a great way to waste my time. | 11:33 |
| gnarf | isPlain was heavily redone in 1.6 right? | 11:33 |
| gnarf | rwaldron: at least its only an hour and half of our time instead of weeks ;) | 11:33 |
| rwaldron | ugh no kidding | 11:34 |
| rwaldron | as for isPlainObject changes | 11:34 |
| rwaldron | no changes aside from when i wrapped the potentially throwing condition in try/catch | 11:34 |
| rwaldron | not since... 2009? | 11:34 |
| rwaldron | snover cleaned up some whitespace in there | 11:35 |
| rwaldron | but its all rkatic's original work | 11:35 |
| gnarf | thats old... | 11:35 |
| gnarf | so yeah | 11:35 |
| gnarf | no legit (real world) complaints yet - i say we leave it | 11:35 |
| rwaldron | except for when john added checks for nodeType, later the same day | 11:35 |
| rwaldron | (same day as rkatic's commit was landed) | 11:36 |
| rwaldron | so yeah | 11:36 |
| rwaldron | gnarf +1 | 11:36 |
| rwaldron | to leaving it | 11:36 |
| rwaldron | gnarf spoke and said "the shed will be is green" and it was green. | 11:37 |
| rwaldron | be is = be | 11:37 |
| rwaldron | duh | 11:37 |
| snover | rwaldron: i never fixed anything, be realistic | 11:39 |
| snover | oops | 11:39 |
| snover | I mean | 11:39 |
| snover | “cleaned” anything | 11:39 |
| *** Krinkle is now known as Krinkle-away | 11:41 | |
| rwaldron | snover lies https://github.com/jquery/jquery/commit/3e0cc815043c2425819743e907a0ce263a7ce164 | 11:41 |
| socialhapy | ★ Commit on jquery by csnover (1y, 2m ago): Clean trailing whitespace from all files. | 11:41 |
| snover | I don’t contribute positively like that, give me a break :) | 11:42 |
| rwaldron | ...weird... I could've sworn I learned this lunatic obsession over whitespace and style guides from __someone__ | 11:43 |
| rwaldron | (hint: it was snover) | 11:43 |
| snover | nah. | 11:43 |
| ajpiano | lol just stumbled across this: http://david.heinemeierhansson.com/posts/44-rookies-in-the-bike-shed | 11:46 |
| ajpiano | relevant to our recent discussion :) | 11:46 |
| *** Joins: rpflo (~rpflo@216.51.73.6) | 11:52 | |
| rwaldron | ajpiano i did a double take on the published date | 11:52 |
| rwaldron | weird... | 11:52 |
| deAtog | gnarf: After further examination, isPlainObject does: jQuery.type(obj) which calls Object.toString on the object and checks to see if it's in the class2type array, if not it returns "object".. so maybe rather than doing jQuery.type(obj) || obj.nodeType why not explicitly check toString.call(obj) == "[object Object]" surely that must be faster and safer than what currently exists? | 11:52 |
| ajpiano | rwaldron: haha, yeah. now. | 11:53 |
| rwaldron | deAtog its not reliable. | 11:53 |
| rwaldron | we've been through this many times. | 11:53 |
| rwaldron | please. | 11:53 |
| Eviltwin | rwaldron: Where doesn't it work? | 11:54 |
| rwaldron | fml. | 11:54 |
| *** Joins: rpflo_ (~rpflo@216.51.73.6) | 12:01 | |
| deAtog | rwaldron: I'm curious as well.. do you know a case where document.createElement('div').toString() would return "[object Object]"? | 12:01 |
| rwaldron | Eviltwin deAtog http://jsfiddle.net/rwaldron/YCGYS/ | 12:01 |
| gnarf | rwaldron: actually, from what i can see its just [object] | 12:03 |
| rwaldron | gnarf i literally copy/pasted from the output | 12:03 |
| gnarf | http://cl.ly/2L3F0Z2J2p2l3U2C1n3z | 12:03 |
| gnarf | rwaldron: maybe its a console.log issue? | 12:03 |
| rwaldron | in the 7 minutes between Eviltwin asking me and me responding | 12:04 |
| rwaldron | i checked all browser | 12:04 |
| rwaldron | s | 12:04 |
| *** Quits: rpflo (~rpflo@216.51.73.6) (Ping timeout: 240 seconds) | 12:04 | |
| rwaldron | gnarf Object.prototype.toString returns the string representation of an object's internal [[Class]] | 12:05 |
| rwaldron | String({}) does little more then call the the built-in toString() method of {} | 12:06 |
| rwaldron | one can be modified, the other cannot | 12:06 |
| *** Quits: rpflo_ (~rpflo@216.51.73.6) (Remote host closed the connection) | 12:08 | |
| rwaldron | gnarf: http://jsfiddle.net/rwaldron/CWUsw/show/light | 12:08 |
| *** Joins: rpflo (~rpflo@216.51.73.6) | 12:08 | |
| rwaldron | IE8 http://gyazo.com/df6d54ba7d90023127c42baad743f36e.png | 12:09 |
| rwaldron | IE6 http://gyazo.com/660e8cadbac58a836b12ddd9bc1e8613.png | 12:09 |
| rwaldron | Chrome http://gyazo.com/a075f534df6503a942739428b0d219ff.png | 12:10 |
| *** Parts: braddunbar (~brad@rrcs-98-101-198-53.midsouth.biz.rr.com) () | 12:10 | |
| rwaldron | Yes, I've also tried: valueOf and toSource | 12:11 |
| gnarf | rwaldron: strangleys | 12:15 |
| deAtog | yup.. that was a little unexpected.. but I can see the implications of it.. document.createElement('div').toString() doesn't give "[object Object]", but Object.prototype.toString.call(document.createElement('div')) does.. I concede it's a difficult problem to which there is no perfect | 12:20 |
| deAtog | solution | 12:20 |
| rwaldron | yay | 12:20 |
| rwaldron | now, let's never speak of this again | 12:20 |
| * rwaldron runs away | 12:20 | |
| ajpiano | maybe we should file a ticket to document this discussion | 12:20 |
| ajpiano | .... or a storify :x | 12:21 |
| rwaldron | storify stinks | 12:21 |
| rwaldron | they need to be less crashy | 12:21 |
| rwaldron | and then i will love them | 12:21 |
| ajpiano | i've never made one, just consumed | 12:21 |
| rwaldron | i'll consume you! | 12:22 |
| rwaldron | ok, brb | 12:22 |
| *** Krinkle-away is now known as Krinkle | 12:23 | |
| *** Joins: colinclark_ (~colin@205.211.168.52) | 12:24 | |
| *** Joins: rpflo_ (~rpflo@216.51.73.6) | 12:26 | |
| gnarf | ajpiano: if storify had the ability to quote irc channels.... | 12:26 |
| gnarf | :) | 12:26 |
| *** Quits: colinclark (colin@nat/ocadu/x-bxsmjvhgftrxkgda) (Ping timeout: 248 seconds) | 12:26 | |
| *** colinclark_ is now known as colinclark | 12:26 | |
| *** Quits: rpflo (~rpflo@216.51.73.6) (Read error: Operation timed out) | 12:27 | |
| Krinkle | don't tell me the subject is still nodeType on plain objects? | 12:44 |
| Krinkle | yikes | 12:44 |
| Krinkle | what did I miss? | 12:44 |
| Eviltwin | Apparently it's not a good idea to have a nodeType key in objects that aren't DOM elements :D | 12:47 |
| *** Quits: colinclark (~colin@205.211.168.52) (Remote host closed the connection) | 12:59 | |
| *** Joins: colinclark (colin@nat/ocadu/x-usvbpyjixfjhvnxz) | 12:59 | |
| *** Quits: gyzmodo (x@89.146.92.54) () | 13:03 | |
| danheberden | Eviltwin i'm going to start putting a nodeType property on every object i ever make | 13:10 |
| Eviltwin | I'm going to add it to my Object prototype | 13:11 |
| miketaylr | rwaldron: that getBoundingClientRect bug just had its priority bumped, i'll comment on the bug when i find out more. | 13:12 |
| miketaylr | (bumped up, that is) | 13:12 |
| rwaldron | miketaylr thank you sir | 13:14 |
| miketaylr | from the bug "That puts this entire bug in a different light - if we can buy some jQuery-kudos by fixing this we probably should." | 13:15 |
| miketaylr | :D | 13:15 |
| miketaylr | mmm kudos | 13:15 |
| rwaldron | whoa rad | 13:16 |
| sindresorhus_ | miketaylr: Thanks :D | 13:16 |
| miketaylr | oh hey, didn't see you here :) | 13:17 |
| danheberden | twss | 13:17 |
| miketaylr | no promises, etc. but i'll keep you guys updated. | 13:17 |
| sindresorhus_ | :) | 13:21 |
| *** Quits: Justin_o (justin@nat/ocadu/x-lxbvvjutujrqkatj) (Ping timeout: 272 seconds) | 13:22 | |
| *** Quits: erichynds (~ehynds@64.206.121.41) () | 13:29 | |
| *** Quits: sindresorhus_ (~sindresor@82.147.51.146) (Quit: Leaving...) | 13:31 | |
| *** Joins: addyosmani (~addyosman@host86-128-132-190.range86-128.btcentralplus.com) | 13:33 | |
| *** Quits: rtgibbons (~textual@67-131-94-2.dia.static.qwest.net) (Quit: Computer has gone to sleep.) | 13:46 | |
| *** Joins: rtgibbons (~textual@64-58-7-174.sta.mho.net) | 13:52 | |
| *** Joins: melter (~Melter@2001:4930:116:0:21c:c0ff:feef:eaf5) | 13:53 | |
| *** Quits: kswedberg (~kswedberg@173-162-44-162-michigan.hfc.comcastbusiness.net) (Quit: Leaving.) | 14:04 | |
| *** Quits: michelled (michelled@nat/ocadu/x-uuavlsfqcaoixlcr) (Ping timeout: 260 seconds) | 14:11 | |
| *** Quits: addyosmani (~addyosman@host86-128-132-190.range86-128.btcentralplus.com) (Quit: addyosmani) | 14:15 | |
| *** Joins: kswedberg (~kswedberg@c-68-43-183-68.hsd1.mi.comcast.net) | 14:18 | |
| *** Quits: henrikkok (~henrikkok@3306ds3-amb.0.fullrate.dk) (Quit: Leaving.) | 14:18 | |
| *** Quits: gibson042 (~rgibson@nat-07-mht.dyndns.com) (Read error: Operation timed out) | 14:19 | |
| *** Joins: sindresorhus_ (~sindresor@82.147.51.146) | 14:33 | |
| *** Quits: rtgibbons (~textual@64-58-7-174.sta.mho.net) (Quit: Computer has gone to sleep.) | 14:57 | |
| gnarf | jQuery protip: Object.prototype.nodeType = 1; <-- destroy everything! | 14:57 |
| *** Quits: danzik17 (~danzik17@164.55.254.106) (Ping timeout: 246 seconds) | 15:01 | |
| *** Joins: eddiemonge (~eTiger13@70-36-226-152.dsl.static.sonic.net) | 15:02 | |
| *** Joins: danzik17 (~danzik17@ool-321d14e9.dyn.optonline.net) | 15:06 | |
| *** Joins: rtgibbons (~textual@64-58-7-174.sta.mho.net) | 15:07 | |
| *** Quits: colinclark (colin@nat/ocadu/x-usvbpyjixfjhvnxz) (Quit: colinclark) | 15:10 | |
| *** Quits: danzik17 (~danzik17@ool-321d14e9.dyn.optonline.net) (Ping timeout: 244 seconds) | 15:11 | |
| *** Joins: danzik17 (~danzik17@ool-435606a9.dyn.optonline.net) | 15:11 | |
| socialhapy | ★ Tweet from jquerymobile: Example of Autocomplete in jQuery Mobile by @cfjedimaster - http://t.co/cm2Tbbrj ★ http://bit.ly/GWdyFD | 15:11 |
| socialhapy | ★ Tweet from jquerymobile: Developing mobile applications with PhoneGap and JQuery Mobile - http://t.co/TeztXbQG ★ http://bit.ly/GWdENH | 15:12 |
| *** Quits: eddiemonge (~eTiger13@70-36-226-152.dsl.static.sonic.net) (Read error: Connection reset by peer) | 15:19 | |
| *** Joins: adnan_ (~adnan_wah@108-215-232-154.lightspeed.hstntx.sbcglobal.net) | 15:25 | |
| *** Quits: timmywil (~timmywil@host-68-169-154-67.WISOLT2.epbfi.com) (Quit: Computer has gone to sleep.) | 15:28 | |
| *** Joins: timmywil (~timmywil@host-68-169-154-67.WISOLT2.epbfi.com) | 15:29 | |
| *** Quits: timmywil (~timmywil@host-68-169-154-67.WISOLT2.epbfi.com) (Client Quit) | 15:31 | |
| *** Quits: rpflo_ (~rpflo@216.51.73.6) (Remote host closed the connection) | 16:25 | |
| *** Joins: rpflo (~rpflo@216.51.73.6) | 16:26 | |
| *** Quits: rpflo (~rpflo@216.51.73.6) (Remote host closed the connection) | 16:28 | |
| *** Quits: sindresorhus_ (~sindresor@82.147.51.146) (Quit: Leaving...) | 16:30 | |
| *** Quits: rtgibbons (~textual@64-58-7-174.sta.mho.net) (Quit: Computer has gone to sleep.) | 16:52 | |
| *** Joins: timmywil (~timmywil@host-68-169-154-67.WISOLT2.epbfi.com) | 17:09 | |
| *** Joins: gavin_huang (~gravof@125.115.185.226) | 17:20 | |
| *** Joins: rpflo (~rpflo@c-76-23-59-19.hsd1.ut.comcast.net) | 17:29 | |
| *** Quits: rpflo (~rpflo@c-76-23-59-19.hsd1.ut.comcast.net) (Remote host closed the connection) | 17:35 | |
| *** Joins: rpflo (~rpflo@c-76-23-59-19.hsd1.ut.comcast.net) | 17:37 | |
| *** Quits: stevecrozz (~stevecroz@173.227.0.2) (Remote host closed the connection) | 17:42 | |
| *** Quits: rpflo (~rpflo@c-76-23-59-19.hsd1.ut.comcast.net) (Remote host closed the connection) | 17:44 | |
| *** Joins: sneakyness (~sneakynes@c-66-235-53-113.sea.wa.customer.broadstripe.net) | 18:05 | |
| *** Krinkle is now known as Krinkle-away | 18:12 | |
| *** Joins: jovrtn (~Jesse@137.229.131.42) | 18:22 | |
| *** Quits: jovrtn (~Jesse@137.229.131.42) (Client Quit) | 18:22 | |
| *** Joins: jovrtn (~Jesse@137.229.131.42) | 18:23 | |
| *** Quits: AzaToth (~azatoth@wikipedia/AzaToth) (Read error: Connection reset by peer) | 18:24 | |
| *** Quits: jovrtn (~Jesse@137.229.131.42) (Client Quit) | 18:26 | |
| *** Joins: jovrtn (~Jesse@137.229.131.42) | 18:26 | |
| *** Joins: rpflo (~rpflo@c-76-23-59-19.hsd1.ut.comcast.net) | 18:36 | |
| *** Quits: rwaldron (~rwaldron@75-150-66-249-NewEngland.hfc.comcastbusiness.net) (Quit: Leaving...) | 18:45 | |
| *** Quits: adnan_ (~adnan_wah@108-215-232-154.lightspeed.hstntx.sbcglobal.net) (Ping timeout: 252 seconds) | 18:50 | |
| *** Joins: adnan_ (~adnan_wah@108-215-232-154.lightspeed.hstntx.sbcglobal.net) | 18:57 | |
| *** Quits: rpflo (~rpflo@c-76-23-59-19.hsd1.ut.comcast.net) (Remote host closed the connection) | 18:58 | |
| *** Quits: adnan_ (~adnan_wah@108-215-232-154.lightspeed.hstntx.sbcglobal.net) (Client Quit) | 18:58 | |
| *** Joins: rpflo (~rpflo@c-76-23-59-19.hsd1.ut.comcast.net) | 19:01 | |
| *** Joins: mikesherov (18bd592f@gateway/web/freenode/ip.24.189.89.47) | 19:44 | |
| mikesherov | . | 19:44 |
| *** Quits: jovrtn (~Jesse@137.229.131.42) (Quit: jovrtn) | 19:49 | |
| *** Quits: miketaylr (~miketaylr@cpe-70-112-101-224.austin.res.rr.com) (Quit: Leaving...) | 19:49 | |
| *** Krinkle-away is now known as Krinkle-awa | 20:00 | |
| *** Krinkle-awa is now known as Krinkle-away | 20:00 | |
| *** Joins: Justin_o (~justin@CPE001b63f2cc0e-CM0011aec4b062.cpe.net.cable.rogers.com) | 20:00 | |
| *** Quits: mikesherov (18bd592f@gateway/web/freenode/ip.24.189.89.47) (Quit: Page closed) | 20:01 | |
| *** Quits: kswedberg (~kswedberg@c-68-43-183-68.hsd1.mi.comcast.net) (Quit: Leaving.) | 20:05 | |
| *** Quits: danzik17 (~danzik17@ool-435606a9.dyn.optonline.net) (Ping timeout: 246 seconds) | 20:23 | |
| *** Quits: timmywil (~timmywil@host-68-169-154-67.WISOLT2.epbfi.com) (Quit: Computer has gone to sleep.) | 20:28 | |
| *** Joins: jovrtn (~Jesse@69-161-6-71-rb2.nwc.dsl.dynamic.acsalaska.net) | 20:44 | |
| *** Joins: jholloman (~chatzilla@c-24-98-219-205.hsd1.ga.comcast.net) | 20:56 | |
| *** Joins: rtgibbons (~textual@70-59-21-90.hlrn.qwest.net) | 20:57 | |
| *** Quits: jholloman (~chatzilla@c-24-98-219-205.hsd1.ga.comcast.net) (Ping timeout: 246 seconds) | 21:02 | |
| *** Quits: Justin_o (~justin@CPE001b63f2cc0e-CM0011aec4b062.cpe.net.cable.rogers.com) (Quit: Justin_o) | 21:17 | |
| *** Quits: sneakyness (~sneakynes@c-66-235-53-113.sea.wa.customer.broadstripe.net) (Quit: ¡) | 21:27 | |
| *** Joins: sneakyness (~sneakynes@c-66-235-53-113.sea.wa.customer.broadstripe.net) | 21:33 | |
| *** Joins: rwaldron (~rwaldron@209-6-71-27.c3-0.abr-ubr1.sbo-abr.ma.cable.rcn.com) | 21:47 | |
| *** Quits: tronhammer (~Adium@209-234-189-154.static.twtelecom.net) (Quit: Leaving.) | 22:27 | |
| *** Quits: snover (~Adium@unaffiliated/snover) (Quit: Leaving.) | 22:29 | |
| *** Joins: NimeshNeema (u2689@gateway/web/irccloud.com/x-wigrxyghsmrezhxz) | 22:33 | |
| *** Quits: rwaldron (~rwaldron@209-6-71-27.c3-0.abr-ubr1.sbo-abr.ma.cable.rcn.com) (Quit: Leaving...) | 22:37 | |
| *** Quits: rpflo (~rpflo@c-76-23-59-19.hsd1.ut.comcast.net) (Remote host closed the connection) | 22:59 | |
| *** Joins: rpflo (~rpflo@c-76-23-59-19.hsd1.ut.comcast.net) | 23:03 | |
| *** Joins: tronhammer (~Adium@ip184-187-160-197.sb.sd.cox.net) | 23:03 | |
| *** Quits: rpflo (~rpflo@c-76-23-59-19.hsd1.ut.comcast.net) (Remote host closed the connection) | 23:08 | |
| *** Joins: sean` (~seankoole@D97A9E4C.cm-3-3c.dynamic.ziggo.nl) | 23:40 | |
| *** Quits: rtgibbons (~textual@70-59-21-90.hlrn.qwest.net) (Quit: Computer has gone to sleep.) | 23:53 | |
Generated by irclog2html.py 2.12.1 by Marius Gedminas - find it at mg.pov.lt!