Dom Scripting Get All List Element With A Specific Class Name?
Apr 25, 2010
I want my script to loop through all the list elements and when it sees a class name of "more services" an alert window should pop up. The alert is so I know i've done it right-which I haven't.
Currently my code looks like this.
Code:
<script type="text/javascript">
var serviceList = document.getElementsByTagName("li");
for (var i=0; i< serviceList.length; i++) {
if (serviceList[i].classname == "more-services"){
if the dt-element in one of the definition lists has a specific css-property (e.g. length > 100px) then the dd-element with the css-class "subtitle" in the same definition list should be removed.
I have a list of links in a sidebar, each with an associated class name. When one of these links are clicked, I want to fade out all of the main content list items that do NOT have this class (ie - if I click on boots, I want to fade out the list items heels and sandals)
I want to get the class that starts with 'special' and store it in a variable...but I am having trouble doing this...I can get as far as storing all of the classes in a variable:
var myClasses = $(this).attr('class');
...but I now need to extract just the one class that starts with 'special'...
On my website I have a lot of entries which are similar to blog-entries. Every single entry has about 500 signs and if there are more than there is supposed to be a button "read further"(atm there is no button but later it will be). If the user click this button, the remaining text of the entry is supposed to slide down. My problem is now that I don't know how to slide down just one article. Every article looks like this:
But how to slide down only the "slide_text" which belongs to the clicked article. If I use: $('article').click(function() { $('.slide_text').slideToggle(200); }); Every singe "slide_text" of all the entries appears. But this is not, what I want. Is there a way to toggle just the child-slide_text of one entry? Or do I have to give every entry an id to define which entry is supposed to toggle?
What is happening is $(this) is no longer based on .expand being the (this) that is clicked.
like if i have a button SOMEWHERE randomly on the page with this
<div onclick="Minimize('_alerts');">Click Here</div> this will minimize alerts but because the (this) in minimize function doesn't actually point to the right button that I want to add a class to.
Is there a way to modify the minimize function so that it finds the <div id="mytoggle"><ul> <li class="expand boxminimize" rel="_alerts"> using the rel toggle, and then changes the class of the li from expand boxminimize to boxexpanded??
just like the .expand click function I posted on the top of the post that works?
I am new to this discussion but hope you would post reply for my query and encourage me to keep in touch with this discussion. Well here is my problem. I have made an edit in place form in which we can add and remove the elements. I have used jquery.jeditable.mini.js and jquery.duplicate-remove.js plugins for edit in place and add and remove action. I have live() function to access the dynamically ganerated elements like this. $(".addressDiv span").live("mouseover", function(){ clickable function here...
My DOM structure in HTML page have some elements 'IMG'. One of 'img' element have attribute 'src' = 'lolo1.jpg'. How can i find the 'DIV' element with this specific 'img' element inside? I have to find nearest 'DIV'.
[Code]...
I wanna write function like a GetNearestDivID('lolo2.jpg') which would give me result 'mix2'
Basically I want to recognize which <div> tag was double clicked, and hide the corresponding link that is nested within that specific <div> tag.
The only way I can think to do this currently is to basically copy and paste a whole bunch of jQuery code for each <div> tag and it's sub-elements (links in this case).
I'm a novice here, and I've got such a piece of code:
$(document).ready(function() { $.each(includes, function(index, value) { $('ul#menu-list').append('<li id="' + index + '"><a href="#">' + value + '</a></li>');
[Code]....
Basically, I load an html document on demand, through a menu populated with 'includes' values. Clicking on any item on the menu will load the appropriate document in the #content div and add an 'active' class to the menu item itself, to highlight it.
The loaded document optionally has inline links, that should load documents based on the same id's. Clicking on these inline links loads the appropriate document, but the 'active' class won't be added to the menu item having the same id of the inline link.
The thing I don't understand is that if I put (look at the line with arrows) any other value than 'id' (any valid integer or even 'id * 2') I get the desired result: a menu item having that id gets highlighted, a class being added to it.
I've got a list of modules, and when I click on one of them it expands displaying the content. When you expand them, a little image on the right changes from a down arrow (v) to an up arrow (^), but it's changing on all of the modules rather than just the one.
Here is the website: [URL]
It's pretty obvious what my question is; how do I get it so the image only changes on the module that you expand?
Here's the code for the moduleToggle function:
function moduleToggle() { $('.content').hide(); $('.title').click(function() {
I have several table rows with the class name "recs", each containing a cell with the class name "data".Now I want to copy the text inside the table cell into a text box whenever I click on each row. For example if I click on the second table row, the name "David" would be copied in the textbox "name"
I'm building a volunteer translation site. In order to constantly update only paragraphs that multiple translators are working on, I need to pass an array to PHP of A: which paragraphs are open, and B: which translations have been submitted and are visible on the user's screen. PHP will then compare this with what is in the database and tell jQuery to add new submitted translation paragraphs or remove deleted ones.I've managed to make a string of all the open Div's and have it updated every second, like this:
function cycle(){ var data = ''; $('.paragraphtobetranslated:visible').each(function(){
Just getting my feet wet with AJAX and trying to figure out how I can make a javascript call to a specific PHP function in another file when I have a drop down menu change value using DOM. I've found lots of examples of how it could be done with GET variables, but none for this particular method of data retrieval. Has anyone ever ran into this, and if so, how did you solve this interesting deliema?
I am currently attempting to write a function that retrieves the name attribute from a list of items with a specific class name. To illustrate: Code: Show types of food: <input type="radio" name="food" id="fruit" onclick="setVisibility('fruit')"/> <label for="fruit">Fruit</label> <input type="radio" name="food" id="vegetable" onclick="setVisibility('vegetable')"/> <label for="vegetable">Vegetables</label>
I would like create a function called setVisibility to iterate through all the list items where class=food and return the value of the name, so that I can compare that to the radio box, and set visibility accordingly.
I'm working on a project that requires dynamic manipulation of an ordered list -- adding and removing elements in response to the user pressing buttons. I've run in to some odd behavior. Here's my code:
$("#add-track").click(function(){ var listEl = $("<li>Dynamic Content Here</li>"); listEl.hide();
[code]....
Looks pretty straightforward, problem is when I add the new list element it does not prepend it with any number (being part of an ordered list). Now if I remove the hide and fadeIn lines (just append it), it inserts it correctly with a number before it, but I want this to look pretty being jQuery and all...
hi everybody, didn't find this using the search :( this is my problem: i create a dom element dynamically (<span>) and want to assign a class attribute to it such that it has some css style, this works in ie, but not in firefox :( here's the simple code:
<div id="somediv"></div>
var div = window.document.getElementById("somediv"); var span = window.document.createElement("span"); span.innerHTML = "span"; span.attributes.getNamedItem("class").nodeValue = "span_class"; div.appendChild(span);
so this works well in ie6, but firefox gives this error: Error: span.attributes.getNamedItem("class") has no properties
if i run this code on a statically defined span (in the html file), where a class attribute already is set:
changing the class to "span_class" works both in ie and firefox.
how can i fix my above code such that it works in both browsers? it seems that on newly created dom elements the class attribute isn't even there (to change it), how can i create it, and then change it?
How would I target (with jQuery or normal javascript) the 5th and 6th li in an unsorted list for styling? I need to change the css for only 2 items in a list.
i would like to create a list of all images inside a specific div. It should be outputted as ul li list. The List should be clickable and on click i would like to be send to the position of the image on my site.