Search Results

Search found 30511 results on 1221 pages for 'javascript events'.

Page 182/1221 | < Previous Page | 178 179 180 181 182 183 184 185 186 187 188 189  | Next Page >

  • small scale web site - global javascript file style/format/pattern - improving maintainability

    - by yaya3
    I frequently create (and inherit) small to medium websites where I have the following sort of code in a single file (normally named global.js or application.js or projectname.js). If functions get big, I normally put them in a seperate file, and call them at the bottom of the file below in the $(document).ready() section. If I have a few functions that are unique to certain pages, I normally have another switch statement for the body class inside the $(document).ready() section. How could I restructure this code to make it more maintainable? Note: I am less interested in the functions innards, more so the structure, and how different types of functions should be dealt with. I've also posted the code here - http://pastie.org/999932 in case it makes it any easier var ProjectNameEnvironment = {}; function someFunctionUniqueToTheHomepageNotWorthMakingConfigurable () { $('.foo').hide(); $('.bar').click(function(){ $('.foo').show(); }); } function functionThatIsWorthMakingConfigurable(config) { var foo = config.foo || 700; var bar = 200; return foo * bar; } function globallyRequiredJqueryPluginTrigger (tooltip_string) { var tooltipTrigger = $(tooltip_string); tooltipTrigger.tooltip({ showURL: false ... }); } function minorUtilityOneLiner (selector) { $(selector).find('li:even').not('li ul li').addClass('even'); } var Lightbox = {}; Lightbox.setup = function(){ $('li#foo a').attr('href','#alpha'); $('li#bar a').attr('href','#beta'); } Lightbox.init = function (config){ if (typeof $.fn.fancybox =='function') { Lightbox.setup(); var fade_in_speed = config.fade_in_speed || 1000; var frame_height = config.frame_height || 1700; $(config.selector).fancybox({ frameHeight : frame_height, callbackOnShow: function() { var content_to_load = config.content_to_load; ... }, callbackOnClose : function(){ $('body').height($('body').height()); } }); } else { if (ProjectNameEnvironment.debug) { alert('the fancybox plugin has not been loaded'); } } } // ---------- order of execution ----------- $(document).ready(function () { urls = urlConfig(); (function globalFunctions() { $('.tooltip-trigger').each(function(){ globallyRequiredJqueryPluginTrigger(this); }); minorUtilityOneLiner('ul.foo') Lightbox.init({ selector : 'a#a-lightbox-trigger-js', ... }); Lightbox.init({ selector : 'a#another-lightbox-trigger-js', ... }); })(); if ( $('body').attr('id') == 'home-page' ) { (function homeFunctions() { someFunctionUniqueToTheHomepageNotWorthMakingConfigurable (); })(); } });

    Read the article

  • jKey (JavaScript key shortcut plugin) Issue

    - by Oscar Godson
    Me and a friend are writing a plugin for jQuery that makes it easy for devs to add key shortcuts and we're damn close but no cigar. We're having issues with the key combos. It seems like we are having issues when you call the same selector multiple times on a page. Try pressing alt+a... youll see it works one time, then gets all mangled up. Anyone know how to fix it? It'll be on github after it's corrected and I'd be happy to add "thank you to" link to whoever can fix this in the header with the copyright info :) It's nicely documented and i have all the code and stuff here. So... anyone? http://jsbin.com/azaha4

    Read the article

  • help, stuck with logic variable comparison loop, javascript

    - by Jamex
    I have an input text box for search of input, the id of the text box is: id="search". if a user enters 'cat' at first and hit search. In the function, I get the value 'cat' by using the syntax: var input = document.getElementById("search").value; After that, the user enter 'dog' in the search box and hit search using the same function. The function would assign 'dog' to the input variable. How would I compare the current value (dog) to the previously entered value (cat)? I have tried to assign the original input with a statement, something like var orig = input; but that would only overwrite the original input with the new input. What is the logical approach to this problem.

    Read the article

  • Can't find the error in my javascript code

    - by Olivier
    This js program should display the first 100 prime numbers, but instead it crashes each and every time and I can't find the error! Could someone point me towards the best way to debug js code?! Thank you! // initialisation of the array p holding the first 100 prime numbers var p = []; // set the first prime number to 2 p.push(2); // find the first 100 prime numbers and place them in the array p var i = 3; while (p.length < 100) { var prime = true; loop: for (var item in p){ if (i%item === 0){ prime = false; break loop; } } if (prime) p.push(i); i = i + 2; } // display the first 100 prime numbers found var i=1; for (var item in p){ document.writeln(i,item); i++; }

    Read the article

  • Getting 'sections.each is not a function' with javascript / scriptaculous

    - by tonyyeb
    Hi all Trying an example piece of code for scriptaculous for doing some drag and drop. It works fine in IE8 but Firefox and Chrome generate an error of 'sections.each is not a function' Here is the code: function getGroupOrder() { var sections = document.getElementsByClassName('section'); var alerttext = ''; sections.each(function(section) { var sectionID = section.id; var order = Sortable.serialize(sectionID); var mySectionID = Right(section.id); var myLen = String(Sortable.sequence(section)).length; var StuCode = ""; if (myLen ==8) {var StuCode = String(Sortable.sequence(section)).substring(myLen, 2);} else if (myLen ==9) {var StuCode = String(Sortable.sequence(section)).substring(myLen, 3);} alerttext += mySectionID + ': ' + StuCode + '\n'; alerttextb = sectionID + ': ' + StuCode + '\n'; } } One solution suggested on a forum "I was able to resolve this issue by wrapping the call to document.getElementsByClassName('section'); with $A()" but I don't have a clue what that means! I asked what it meant but the post was made in 2008 and no reply as yet. Thanks for any help provided. Regards

    Read the article

  • Example from: "Javascript - The Good Parts"

    - by Matrym
    What "ugliness" does the following solve? There's something I'm not getting, and I'd appreciate help understanding what it is. For example, by augmenting Function.prototype, we can make a method available to all functions: Function.prototype.method = function (name, func) { this.prototype[name] = func; return this; }; By augmenting Function.prototype with a method method, we no longer have to type the name of the prototype property. That bit of ugliness can now be hidden.

    Read the article

  • Javascript/JQuery if statement

    - by Samuurai
    This is probably pretty simple, but I can't figure out how to do it: I have this code: $.post("/admin/contract", { 'mark_paid' : true, 'id' : id }, In pseudo code, how can I do this: $.post("/admin/contract", { 'mark_paid' : true, 'id' : id, if(is_set(dont_email)) {print 'dont_email' : true} },

    Read the article

  • Javascript: variable scope & the evils of globals

    - by Nick
    I'm trying to be good, I really am, but I can't see how to do it :) Any advice on how to not use a global here would be greatly appreciated. Let's call the global G. Function A Builds G by AJAX Function B Uses G Function C Calls B Called by numerous event handlers attached to DOM elements (type 1) Function D Calls B Called by numerous event handlers attached to DOM elements (type 2) I can't see how I can get around using a global here. The DOM elements (types 1 & 2) are created in other functions (E&F) which are unconnected with A. I don't want to add G to each event handler (because it's large and there's lots of these event handlers), and doing so would require the same kind of solution as I'm seeking here (i.e., getting G to E&F). The global G, BTW, is an array that is necessary to build other elements as they, in turn, are built by AJAX. I'm not convinced that a singleton is real solution, either. Thanks.

    Read the article

  • Javascript Closures, Callbacks, This and That

    - by nazbot
    I am having some trouble getting a callback function to work. Here is my code: SomeObject.prototype.refreshData = function() { var read_obj = new SomeAjaxCall("read_some_data", { }, this.readSuccess, this.readFail); } SomeObject.prototype.readSuccess = function(response) { this.data = response; this.someList = []; for (var i = 0; i < this.data.length; i++) { var systemData = this.data[i]; var system = new SomeSystem(systemData); this.someList.push(system); } this.refreshList(); } Basically SomeAjaxCall is making an ajax request for data. If it works we use the callback 'this.readSuccess' and if it fails 'this.readFail'. I have figured out that 'this' in the SomeObject.readSuccess is the global this (aka the window object) because my callbacks are being called as functions and not member methods. My understanding is that I need to use closures to keep the 'this' around, however, I have not been able to get this to work. If someone is able show me what I should be doing I would appreciate it greatly. I am still wrapping my head around how closures work and specifically how they would work in this situation. Thanks!

    Read the article

  • jquery/javascript: accessing contents of an iframe

    - by rz
    I would like to manipulate the html inside an iframe using jquery. I thought I'd be able to do this by setting the context of the jQuery function to be the document of the iframe, something like: $(function(){//document ready $('some selector', frames['nameOfMyIframe'].document).doStuff() }); However this doesn't seem to work. A bit of inspection shows me that the variables in frames['nameOfMyIframe'] are undefined unless I wait a while for the iframe to load. However, when the iframe loads the variables are unaccessible (I get permission denied type errors). Does anyone know of way to work around this?

    Read the article

  • Javascript - event listener toggle button

    - by user2546157
    I'm trying to create a button which can toggle "double click" to "single click" and in the opposite. For some reason, once it toggles to single click and it cannot toggle back. Can anyone please help! function init() { normal_listeners(); } function addListener(){ var image1 = document.getElementById('image_1'); var image2 = document.getElementById('image_2'); var image3 = document.getElementById('image_3'); if(document.getElementById('listener_1').value == "Listener"){ document.getElementById('listener_1').style.backgroundColor = "red"; alert("Normal"); image1.addEventListener("dblclick", function(){userChoice(1);}, false); image2.addEventListener("dblclick", function(){userChoice(2);}, false); image3.addEventListener("dblclick", function(){userChoice(3);}, false); document.getElementById('listener_1').value = "Normal"; } else if(document.getElementById('listener_1').value == "Normal") { document.getElementById('listener_1').style.backgroundColor = "green"; alert("Listener"); image1.addEventListener("click", function(){userChoice(1);}, false); image2.addEventListener("click", function(){userChoice(2);}, false); image3.addEventListener("click", function(){userChoice(3);}, false); document.getElementById('listener_1').value = "Listener"; } } function normal_listeners(){ var image1 = document.getElementById('image_1'); var image2 = document.getElementById('image_2'); var image3 = document.getElementById('image_3'); var listener1 = document.getElementById('listener_1'); listener1.addEventListener("click", addListener, false); image1.addEventListener("dblclick", function(){userChoice(1);}, false); image2.addEventListener("dblclick", function(){userChoice(2);}, false); image3.addEventListener("dblclick", function(){userChoice(3);}, false); } window.onload = init; <img id="image_1" src="rock.jpg" alt="ROCK" width="100" height="100"> <img id="image_2" src="paper.jpg" alt="PAPER" width="100" height="100"> <img id="image_3" src="scissors.jpg" alt="SCISSORS" width="100" height="100"> <input type="button" id="listener_1" value="Normal" style="background-color:red">

    Read the article

  • Slight confusion of `this` in a JavaScript call back function

    - by thecoshman
    $.ajax({url: path_to_file, cache: false, success: function(html_result){ $("#window_" + this.id + "_cont_buffer").html(html_result);}) Now then. This function call is with in a function of a class. this.id is a property of said class. will this pass the function value of this.id into the string the anonymous function, or will it try to evaluate it when the function actually gets called, thus making no sense. If this is not going to work how I want it to, can you recommend how I achieve this.

    Read the article

  • Javascript Replace text in string

    - by Tegan Snyder
    I'm having some troubles getting regex to replace all occurances of a string within a string. **What to replace:** href="/newsroom **Replace with this:** href="http://intranet/newsroom This isn't working: str.replace(/href="/newsroom/g, 'href="http://intranet/newsroom"'); Any ideas? Thanks, Tegan

    Read the article

  • JavaScript - Efficiently find all elements containing one of a large set of strings

    - by noah
    I have a set of strings and I need to find all all of the occurrences in an HTML document. Where the string occurs is important because I need to handle each case differently: String is all or part of an attribute. e.g., the string is foo: <input value="foo"> - Add class ATTR to the element. String is the full text of an element. e.g., <button>foo</button> - Add class TEXT to the element. String is inline in the text of an element. e.g., <p>I love foo</p> - Wrap the text in a span tag with class TEXT. Also, I need to match the longest string first. e.g., if I have foo and foobar, then <p>I love foobar</p> should become <p>I love <span class="TEXT">foobar</span></p>, not <p>I love <span class="TEXT">foo</span>bar</p>. The inline text is easy enough: Sort the strings descending by length and find and replace each in document.body.innerHTML with <span class="TEXT">$1</span>, although I'm not sure if that is the most efficient way to go. For the attributes, I can do something like this: sortedStrings.each(function(it) { document.body.innerHTML.replace(new RegExp('(\S+?)="[^"]*'+escapeRegExChars(it)+'[^"]*"','g'),function(s,attr) { $('[+attr+'*='+it+']').addClass('ATTR'); }); }); Again, that seems inefficient. Lastly, for the full text elements, a depth first search of the document that compares the innerHTML to each string will work, but for a large number of strings, it seems very inefficient. Any answer that offers performance improvements gets an upvote :)

    Read the article

  • After .load() Reset Textbox with User Entered Value using JavaScript and jQuery

    - by Aaron Salazar
    My function below calls a partial view after a user enters a filter-by string into the text box '#DocId'. When the user is done typing, the partial view is displayed with filtered data. Since my textbox needs to be in the partial view, when user is done entering a filter-by string and is shown the filtered data, the textbox is reset and the user entered data is lost. How can I set the value of the textbox back to the user entered string after the partial view is displayed? I'm pretty sure I need to use .val() but I can't seem to get this to work. $(function() { $('#DocId').live('keyup', function() { clearTimeout($.data(this, 'timer')); var val = $(this).val(); var wait = setTimeout(function() { $('#tableContent').load('/CurReport/TableResults', { filter: val }, 500) }, 500); $(this).data('timer', wait); }); }); Thank you, Aaron

    Read the article

  • using javascript replace() to match the last occurance of a string

    - by Dave
    I'm building an 'add new row' function for product variations, and I'm struggling with the regex required to match the form attribute keys. So, I'm basically cloning rows, then incrementing the keys, like this (coffeescript): newrow = oldrow.find('select, input, textarea').each -> this.name = this.name.replace(/\[(\d+)\]/, (str, p1) -> "[" + (parseInt(p1, 10) + 1) + "]" ) this.id = this.id.replace(/\_(\d+)\_/, (str, p1) -> "_" + (parseInt(p1, 10) + 1) + "_" ) .end() This correctly increments a field with a name of product[variations][1][name], turning it into product[variations][2][name] BUT Each variation can have multiple options (eg, color can be red, blue, green), so I need to be able turn this product[variations][1][options][2][name] into product[variations][1][options][3][name], leaving the variation key alone. What regex do I need to match only the last occurrence of a key (the options key)?

    Read the article

  • Javascript how can I trigger an event that was prevented

    - by Mike Robinson
    In my app a user clicks a link to another page. I'd like to track that in Omniture with a custom event, so I've bound the omniture s.t() event to the click event. How can I make certain the event fires before the next page is requested? I've considered event.preventDefault() on the click event of the link, but I actually want the original event to occur, just not immediately.

    Read the article

  • Javascript insert parameter inside string

    - by amemak
    Hi, I want to ask if there is a way to insert variable inside another string which is part of another statement. For example: function SomeFunction(field) { var someVariable = document.getElementById('<%=' + field + '.ClientID %'); } But I've got an error: Error 6 'string' does not contain a definition for 'ClientID' Thank you.

    Read the article

  • Javascript: Remove checked status from disabled input (already checked)

    - by BoDiE2003
    Im trying to make this function to check an element and if its checked, or not, add or remove respective className. Also, if the element is disabled but is checked, it should un-check it and remove the className('yes') function init() { $(document.body).select('input').each(function(element) { if (!element.checked) { element.up().removeClassName('yes'); } else { element.up().addClassName('yes'); } if (element.checked && element.disabled) { element.checked = false; element.up().removeClassName('yes') } }); } Right now, the last part, is not working, no effect

    Read the article

  • Confirm box always displays first (javascript, jQuery, .Net)

    - by Jan-Frederik Carl
    Hello, I have a jQuery-Script to accomplish the following tasks: if a gridview in my form contains a row with a certain id, it has to be marked red. a confirm dialogue has to pop up to ask the user if he wants to do this or that. I built this code: if (response == "EntryInList") { $('#entryListContainer div table tbody tr').each(function() { if ($(this).attr('id') == 'entry_' + $('#<%= txtProductNumber.ClientID %>').val()) { $(this).css("color", "red"); } } ); if (!confirm("Entry already exists. Really overwrite?")) { jQuery('#<%= txtProductNumber.ClientID %>').val(''); jQuery('#<%= txtCount.ClientID %>').val(''); jQuery('#<%= txtProductNumber.ClientID %>').focus(); return false; } } As a result, the confirm box pops up first, without the row being turned red. Only after using the box, it becomes red. How would I get the row to be turned red at once? Another of my problems is that the confirm box denies my page to be scrolled down. But I would like to do this if the gridview is longer than the entire page.

    Read the article

  • Javascript: find first n prime numbers

    - by bard
    function primeNumbers() { array = []; for (var i = 2; array.length < 100; i++) { for (var count = 2; count < i; count++) { var divisorFound = false; if (i % count === 0) { divisorFound = true; break; } } if (divisorFound == false) {array.push[i];} } return array; } When I run this code, it seems to get stuck in an infinite loop and doesn't return anything... why?

    Read the article

< Previous Page | 178 179 180 181 182 183 184 185 186 187 188 189  | Next Page >