JQuery :: AJAX Changing 'this' - Wrapper For The $.get() Function
May 21, 2010
I have created a javascript object (ajaxQue below) that contains a method (this.get() below) that is a wrapper for the $.get() function and another method (this.jobCompleted() below) that is the callback argument for $.get().
The callback method refers to the javascript keyword 'this'. But 'this' doesnt seem to refer to my instantiated object as I would have expected, instead it seems to refer to something inside AJAX. So I can no longer refer to properties within my object (e.g. 'this.prop1' below). I have included a simplified version of my code below. Is jQuery messing with my callback function ?
I created a quick plugin. You can see it at http: [URL]. It has a strange feature. This plug-in treats the jQuery wrapper object as a group, and passes the whole wrapper in as the context object (the "this") for the functions supplied. Generally, when functions are supplied as parameters, either the context is irrelevant, or each DOM element in the jQuery wrapper is passed. But I don't do that. My plug-in keeps a reference to the jQuery wrapper and calls the functions in that context. This is necessary, because the whole idea is to act on a number of elements as a group -- in this case by fading in and out all members of the group when any individual one is hovered -- but I don't recall seeing this done elsewhere in the jQuery ecosphere.
I know it it a bit of fighting against the idea of jquery cycle, but for the jquery cycle script I need to generate a wrap around every 4 dynamicly created (wordpress posts) div's of the same class, so every slide shows actually 4 dynamic slides at a time.
For example, If the following posts are generated:
It actually needs to generate this:
I've already managed to get this, of which I think i'm getting close:
I have a set of radio buttons that are wrapped in divs and I want to highlight the wrapping div (by adding a class) of a radio button that is clicked while removing the highlight from any previously selected radio button (by removing the class).
I've got it working to the point where it only works on one set of radio buttons but I need to be able to do this on multiple sets. I did find this but was not able to figure out how I'd apply this to my requirement as it is working the other way around here:
I would like to wrap validation messages in <li class="error"/> with validate plugin is there any event or option I can handle to tweak the element before it is appended? I'm unsure if something like that would look ok:
$('form').validate({wrapper:"li.error"}); or either $('form').validate({wrapper:"<li class='error'/>"});
I have a webpage that makes a request to my server to get news posts. The request is made by using $.ajax(). If I change the page (e.g. click on a link) before the request is returned, the onerror handler gets called, raising an error! Any idea why is this happening? For your information, when onerror gets called, the 'xhr' and 'errorThrown' parameters are 'undefined' and the 'status' parameter contains the value 'error' (which I produced using JavaScript's alert).
I'm trying to set my wrapper div width so it fits to screen res. i got it working but it only works when i call it by onclick="SetWidthToResolution()" function and i want it to load with the page.
function SetWidthToResolution() { if(screen.width == 2560)[code]............
I am looking to make an adjustment to this script. I'm trying to find a way to do it as neatly as possible, and without breaking any pre-existing functionality.hat I'm trying to do is have the first section open by default. What makes this a challenge for me is that the boxes that assemble to create the content wrapper are drawn on page initialization.
My problem lies in that I have multiple of these forms on a single page, each one named autoSubmit. I easily rename each with PHP to autoSubmitXXX or YYY depending on their record id numbers, but then the .autoSubmit(); function doesn't know which form to work with.
Code: '#autoSubmit INPUT'
I can grab the individual form ID (XXX or YYY) with:
I have a list of most 17 recent entries from a db table and wanna use jquery/ajax to have a next button that loads the next 17 entries when you click it. It passes the 17 variable to the .load which works fine first time around (this is later used as mysql limit), but then I try to increase the start variable with 17 so that next time I click it would pass 34 to the .load (so it loads next 17 again) but this doesn't work, it simply loads same 17 again on 2nd, 3rd ect. click (so nothing changes). use global variables by setting it with var and using it without var inside the function.
<script> var start = 17; var loadUrl = '<?php echo site_url('welcome/battles'); ?>'; $("#latestbattlesnext").click(function () {
I'm only new to Jquery and Ajax for that matter, understand JavaScript but don't work with it everyday. I have a function from Jcarousel that is populating a div with images (talking to a .txt file which contains the url), JavaScript then writes out the image. function getItemHTML(data){ var split = data.split(";"); var url = jQuery.trim(split[0]); var title = jQuery.trim(split[1]); var url_m = url.replace(/_s.jpg/g, '_m.jpg'); return '<a href="' + url_m + '" title="' + title + '" class="thickbox"><img src="' + url + '" width="' + 75 + ' " height="' + 75 + '" alt="' + title + '" /></a>'; };
And this is the function talking to the datasource function loadItemHandler(carousel, start, last, available){ if (available) { // Trigger loaded carousel.loaded(); return; }var cr = carousel; jQuery.get("example_dynamic_ajax.txt", function(data) { appendItemCallback(cr, start, last, data); });}; Now what I would like to do is instead of populating with images from .txt file I would like to populate with code from another .html page (a html page containing a table code). I'm just not entirely sure what object I need to use and how to go about that. Full code that I am working with is here: [URL].
I have a saving script for this sort of profile project I am working on, a user can drag their widgets round the page at their own will and save their position, but I am wondering how to change it so instead of it being an alert (my original idea) into a piece of content, I was going to use Document.write, but it would just make a blank page with the content on. Code:
I have a calendar coded in PHP and I would like to be able to change the month and year of the calendar using ajax. I have it fully working in PHP atm, for those who don't have Javascript on but I can't seem to make it work with ajax. Some of the code I have atm was taken from this forum, this is the link I'm using to change the month:[code]
Instead of implenting a prefabricated calender on my site, I tried a different route. I built a simple form where the user picks time and date. Now, what I need to do is to secure a dynamic changing of the <select> tag carrying the values for days in the month, based on what information the user has put into the <select> tag carrying the values for the month. This should be logical, as it should not be possible to choose ie. the 31st of June, as there's no such date. I hope you understand what I need.
how the yahoo ad serving script can be used to serve up ads up using JavaScript that isn't inline? I've attempted several things but it just seems like its impossible to do. Essentially, I would like to swap out a new round of ads per AJAX request. Any ideas? I've created a more friendly user interface for a site I'm working on but the thing is that the ads need to change every request since page refreshes are being eliminated. Otherwise, only a single impression may be tracked even though someone has visited essentially 100 pages, which is no good for the ad business.
Also, has anyone had success finding a way to delay the yield manager until the page has fully loaded? Sometimes the yahoo yield manager can take 10+ seconds resulting in a poor user experience and slow load time. Any ideas for that? Essentially, it would be nice to fully load the page than request the ads without using obtrusive JavaScript which seems to be the only way yahoo knows to do things.
check to see if my AJAX select boxes are working for you. The website is: [URL] and there are dropdown select boxes on the right hand side of the travel photo section and also the travel video section.
I've tested these in the following browsers: Mac: Safari 3.2.1, Firefox 3.0.5 Windows: Firefox 2, Firefox 3.0.5, IE6, IE 7
These boxes work fine for me in all the browsers listed above, yet a friend using Windows can't get the drop downs working on either Firefox 3 or on IE 6.
I'm trying to change the CSS of a div that looks like a line so that the line appears to move down the screen. I'm getting no response as yet, just the div and button on screen. This script is in the head:
Code: <script type="text/javascript"> function moves() { if (tops < 500) {
I want a function on my form and when I'm calling that function (i.e. pressing a button), I want to resize the window (only height) with the paramater that I'm supplying to that function. Is it possible?
I'm having 3 images work as 3 buttons. I want to make them when the user clicks on one of them it changes it's image and the image of the other 2 div tags.
Here's my html code <!DOCTYPE html PUBLIC "-W3CDTD XHTML 1.0 TransitionalEN" "[URL]"> <html xmlns="[URL]"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <link rel="stylesheet" type="text/css" href="css/style.css" /> <link rel="stylesheet" type="text/javascript" href="js/Javascript.js" /> <script language="javascript" type="text/javascript"> function changeDiv_ToEnglish() .....
And here's my css code for only the 3 divs @charset "utf-8"; /* CSS Document */ #empty { width:69px; height:40px; float:left; } ..... The problem is : nothing occurs when I click on the arabic , english , japanese divs.