JQuery :: .attr And Value Of Undefined Attributes?
Aug 4, 2010
I have a suggestion based on the assumption, which I think is correct but feel free to prove me wrong, that the .attr() method returns "undefined" in two different cases:1) when the attribute is actually not present in the dom element2) when it is present but it has no value, think for example <input type="text" disabled/> which I not is not standard HTML but I've seen it pretty often...wouldn't it be better to return undefined only in the first case, and return null in the second case? In this way, it'd be clear that the attribute is set but no value is specified.
I make use of new HTML5 data attributes to attach data to DOM elements like so:<div class="foo" data-randomdata="bar">jQuery is awesome.</div> It would be nice to have a specific method to accessing the attributes without having to use the .attr() method like this: var foo = $('div').attr('data-randomdata'); It would be nice for it to work something like this: var foo = $('div').DOMdata('randomdata'); //equals bar
suppose we have a <a href=www.google.com>google</a> tag in our HTML page.And it is inside a div with class name as chapter. Now i added the script as below,
Since upgrading from 1.4.x to 1.6.1 all the code that selects the contents of an XML attribute by the name of 'value' has stopped working. Upon investigation, any time you do
$(someXMLObject).attr("value")
now always returns 'undefined'. This worked fine in previous versions and currently is preventing us from upgrading. I know the obvious solution would be to change the attribute name from 'value' to something else, but this would require some real effort on our part as a lot of our front end code is assuming an attribute of 'value' be passed in.
My question is, is this bug likely to be fixed in a forthcoming release of JQuery or should we implement the necessary workarounds on the assumption that this isn't being worked on?
I've been using 1.3 which allows me to query non-standard attributes on tag. On an anchor I set a value="" attribute and was able to say (in an onclick binding) $(this).attr('value') to get the value. This no longer works with 1.6. Is there another, better way to do this?
I'm getting all kinds of errors, no matter where I put the parenthesis: This all works without trying to find the attr. So, I am trying to slide a ul menu that has a parent anchor with an id of "A". $(("#VerColMenu > li > a").attr('id')=='A').find("+ ul").slideToggle("slow");
I have two img tags and a jquery script which changes the value of the src attribute of each one picked from an array of images and alternatively set the display to block and assign a decreasing z-index.
The problem is that when the hidden image pops up, it seems as if, at first, set the css display to block and then change the source of the file as, for a second, it hangs to the previous loaded picture. Well I thought it was easy to manage by setting a delay but instead seems not to do anything. And then with a setTimeout but it doesn't work as expected..
I am trying to get a href attr from variable msg. The problem is that the msg consists of not only <a element but it contains also <p element and because of that attr doesn't give any value.
var msg="<p><a href='/users/'>Username</a> Lorem ipsum dolor sit amet, consectetur adipiscing elit.</p> var href=$(msg).attr('href');
how I can get the value of href from the above example?
Not really sure how the best way to start explaining this, but I have a small script set up that activates a second section to an accordion to display information. The idea is that a table cell will be clicked and then the second according will activate displaying information relating to the cell that was clicked in accordion part 1.
I have managed to get it to update coding in the var's by hand, now I want to be able to get certain bits of information from a nested div that is hidden in the table cell (I know, very messy - but it will all be made a little less messy in the future when I have got the process correct).
I've made a script to highlight an element when you rollover on another one.
// Highlight thumbnail on roll over post list item $("#sidebar-left .left-col2 a").live("hover", function(){ var title2 = $(this).attr("title"); alert("title : " + title2);
[Code]....
My problem is that the script works fine but unfortunatly just for the first li element that I rollover...
Edit: Changed dataType2 usage in 3rd line to be a regular variable and not a jQuery variable. Also, this seems to not be working in jQuery 1.5.2 either and only for Opera. I had originally thought this was working for 1.5.2 but I just re-tested and it is not. What happens is that dataType2 is undefined after the call to pull the attribute. I've also now tried .attr('[nodeName="ns1:reference"]') as well as using the same with .prop() in jQuery 1.6.1
This works in Firefox but will not in chrome. In chrome the .css works and changes the cursor to the hand on hover however .attr does not work it doesn't put the onclick attribute on any of the images.
I'm trying to "turn" the border for input fields on (or off).In my css I have border-style:none, and I want to turn the border backon if the first input is empty.
jquery and am trying to set the class value on a td cell. It looks as though it is crashing on setting the attr value. This is effectively what I am trying to do.
// get my row var row = $("#tableID").find("tr:eq(0)"); // get the cells in this row
I am using the "FancyBox" script to load a larger photo, plus information about the photo into a window, ontop of the window.... which works great. However I need to pass the id (or other unique value) to the javascript so it can pass it on and get the right image and info.
My photo gallery thumbnails are loaded via ajax as well using the $.(#alpha).live('click') method, which should allow me to use jquery on the loaded info (as it has let me in the past).
I am using the JQuery cycle plugin that lets me use buttons to fade in and out between different content. The structure is as follows:
HTML Code:
It all works fine but now I need to change the second <a> above, or specifically its ID from "middle1b" to "middle1" on the fly. I'm trying to do it via the method below but somehow JQuery isn't finding the second <a> and hence it can't change it's ID from "middle1b" to "middle1".
Code:
I need to change the link's ID so the hover button image is different as this is necesary to blend it in with the content above it.
I'm sure this has been answered several times before, but I haven't been able to find a post that addressed this issue, so here goes. I'm trying to access a <div>s title attribute. Problem is, it isn't escaping the / character. So for example, if the title is "Emergency/Disaster" it returns "Emergency". I'm using $('#div').attr('title').
I have a problem with attr() function.I made my own lightbox and with jQuery 1.4.x it works nice. But now I use 1.7 and there is a problem. When I called attr in 1.4 $(element).attr("rel") when element hasn't rel, it returns empty string, but in 1.7 it returns undefined.Why? I read a changelog and I didn't find any change at that function.
I'm using the following code to refresh an iframe:
[Code]...
The problem is that Zenbox.show () gets called before the src attribute is fully loaded, so the refresh is visible to the user. Is there any way to setup a callback when the iframe.src is fully loaded that I can call Zenbox.show() in ?