JQuery :: XML Manipulation Using .before() Broke In IE Between 1.5 And 1.6?
Jun 30, 2011
we have a piece of code which does some XML manipulation and it broke in IE (at least 7) between jQuery 1.5 and 1.6.At this link is the chunk of code running on 1.5.2:[URL]and at this link is the same exact code on 1.6.1 and erroring in IE: [URL]On the second link, IE is reporting an error down in jQuery for invalid number of arguments to a method. The second alert never shows.
function showData(id) { $.get("/url/getdata", {id : id}, function(data) { $("#dialogData").html(data);
[code]....
no longer work with the addition of 1.5.Looking at firebug, the correct data is returned, but the function breaks after entering the callback.Everything simply stops.I read about the changes to Ajax call in 1.5, but I have over a thousand such calls through my project -> I cannot even begin to think about hunting them all down and changing them, let alone bug testing it all.
See this fiddle. [URL]. Hover over the circle, and note the mouse enter/leave notifications.
Now try this:[URL] This is the same code in 1.6.2. The hover events no longer work.
I don't believe this is related to the jquery.svg plugin, since the bug originally happened to me using the highcharts library, which creates and adds svg elements itself. I merely used jquery.svg for convenience in making the example, as I know little about svg.
This seems a bug to me, but I wanted to make sure. Is this a known and expected change in behavior?
After I update JQuery autocomplete plugin (jQuery UI Autocomplete @VERSION), I found one issue. The issue is as follows. When I type "jua" in the autocomplete field. Four matches are returned for users with the first name juan. Then add an "n".Only the first match remains in the list. I have come out from this issue by changing the parameter cacheLength:
0 in place of 1. $field.autocomplete({ url:ac_url, cacheLength:1,
For the autocompletion data, it reads from the configuration files.Say in the files the data are in this way.
[code]...
It works for previous issue, But creates another problem, If i change cacheLength to 0 then if i add some new name in the configuration file then it is not taking that updataed data. If i change to 1 then after i type "juan" it displays the last one. That is "juanw" and it not displays the other 4name.
I'm using this jQuery slider code that my coworker and I manipulated so that 3 images slide at a time. It worked great till we updated our jQuery to 1.6.2 from 1.3.2 (we were going to go with 1.7.1 but now that we've encountered this problem we have to hold off). I went all the way back to 1.4.1 and it works okay but not as bad as the latest versions.
I included ALL the code. You can literally copy this whole thing into a blank page, save it and test it. It's not really working as expected right now. It doesn't slide all the way back to 1 and there's an empty slide after 9. I will work with my coworker to debug it more but I want to know why versions 1.4.3 through 1.7.1 break it.
Note: There is considerable background detail here, but I do have three questions, which are clearly marked and appear right before the sample code.
I have a legitimate need to launch an EXE from an HTML page on Windows XP/Internet Explorer. The EXE is already locally installed, and the HTML page is also viewed locally on the PC- it's not a web site. I know of two ways to do this, both of which are featured in the sample HTML file at the bottom of my post.
The first method, using the Shell.Application ActiveX Object, used to work until I installed the latest critical Windows XP patches from Microsoft. Before these patches were installed, you could click the ‘Launch Notepad.exe' button in my sample HTML file and the program would start right up. (Note that my Internet security settings are always at Medium, my Local intranet security settings are at Medium-low, and I've never had to mess with the individual ActiveX security settings to get this code to work.)
However, one of the following critical updates has broken the ‘Launch Notepad' code. It doesn't matter what my Internet/intranet security settings are, or whether I've enabled unsafe ActiveX scripting. My list of suspects is: KB842773, KB840315, KB841873, KB839645. (I have four computers running Windows XP SP-1 at my desk, and each has the same version of Internet Explorer installed- 6.0.2800.1106.xpsp2.030422-1633. The Launch Notepad code stopped working on two of them this week, and still worked on the other two. As a test, I ran Windows Update on one of the working systems and found that after the patches were applied, my code no longer worked. I even restored that machine's pre-patched ghost image and confirmed that the code worked again. Next, I ran Windows Update a second time, and allowed the aforementioned patches to be installed. Again, it broke my code.)
You can confirm whether you have these patches installed on your machine a number of ways, but perhaps the easiest is to open your Windows folder and look for ‘$NtUninstallKBxxxxxx' folders with names matching the patches I listed.
And then there's the second method, used by the ‘Launch Regedit.exe' button. While this will actually still launch the EXE file, it's undesirable because it always prompts you with a dialog that starts out "An ActiveX control on this page might be unsafe…" Note that this even happened before the patches, again regardless of the Internet/Local intranet security settings.
* QUESTION 1: Is there any way to get ShellExecute to work again once the new critical updates are installed?
* QUESTION 2: Failing that, how can I get around the unsafe control warning with the Wscript.Shell method, for a local HTML file that's trying to launch a local EXE?
* QUESTION 3: Is there any OTHER way for an honest guy like me to launch a local EXE from a local HTML file?
Thanks, and here's the sample HTML file:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <script type="text/javascript" language="JavaScript">
function LaunchNotepad() { var launcher = new ActiveXObject("Shell.Application"); launcher.ShellExecute("Notepad.exe", "", "", "open", "1"); }
function LaunchRegedit() { var launcher = new ActiveXObject("WScript.Shell"); launcher.Run("Regedit.exe"); }
jQuery('div#primary').attr('width', '300'); I am manipulating html file. I am doing the above. But It is not updating the html file with the new width.
I am currently creeating a navigation, am am a bit stuck with the navigation.[code]So there should be a new <ul> after every third list element in the sub-menu.[code]
I built an IE-only function that modifies the DOM to create a custom container with rounded corners and some shading at the top. It only gets called when the browser is IE and its version is < 9. It takes the following block:
And turns it into this:
The UI looks identical to FF, which uses the CSS3 attributes to create the rounded box. HOWEVER, in IE8, I can no longer access the embedded <input> element (which does not change). I'm trying to get the value of the <input> tag with the ID of "username" by doing this:
When I disable my DOM manipulation code so that in IE, it remains an ugly, square box, I can get the value of the <input> element with no problem. Once I manipulate the DOM, IE always returns the empty string while FF and Opera work perfectly.
I need to do multi DOM manipulation into a page without reload it (something like: when i click on a thum in another part load a photo with a specific text, if i click on this text load another photo).
I use a js like:
First page loading everything goes good.... but when i fall into MY_CODE1, i can't execute MY_CODE2 anymore.....
I need this iframe for a facebook tab, since they changed the width to 520px. The original page in the iframe is 700px wide, and I've changed a few CSS properties using the frameReady plugin. It's works just fine, but trouble starts, when i'm navigating the target site, the CSS properties I've changed goes back to the original settings.
I manipulate XML with jQuery with no problem in all browseres but not in Internet Explorer. I serched bug-fix and I found "metadata.js" but still not working in my Internet Explorer 7.It's just too nice to manipulate XML with jQuery...As a matter of fact... a simple example of extracting some data:Script page:
<!DOCTYPE html PUBLIC "-//W3C// DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> <html> <head>
[code]....
Code works perfectly in all browsers except IE (Internet Explorer - "failing forever". Good job MS )
I got my code for adding my table ( HTML manipulation )But the problem is, that if u click an empty row, it need to change letter from S to Z ( and empty ( space ) So, i actually don't know how i can use those multiple's, so i started scripting from just an space to ... it didn't work.. but i was sure my script works, so i used it on other page .. and it worked ... here is my code
I would like to display a series of smaller foreground images on top of a larger background image and possibly even control the position of the smaller images dynamically. Is this possible? If so what is the syntax for placing the small images on top of the large one.
I am attempting to pass two user inputs into one variable (text, not array) to pass through my credit card company.
What I have done it two "onchange" scripts so that when the customer enters their information the script runs it does a search and replace on "name" for there name and "number" for their number. However!! If they change their name (or number) a second time the search and replace will fail as it will no longer find "name". Therefore I though some sort of RegX facilitated where I prefix their name with a hypen i.e. '-'.
Is it possible to use regX in this way in Javascript? Can anyone provide advise or a link? Alternatively, am I making this a lot harder than it needs to be!? i.e. could I do an onSubmit instead to change it? I have tried this, however it didn't seem to work.
I've written several scripts that have "while" blocks which increment a date by one day if the date does not match one of a group of dates. However, sometimes it apparently steps out out the while loop even though my condition isn't met. Will work for a few loops then steps out often.
Are there javascript "date" issues? I have also noticed different results between Firefox and Internet Explorer.
This is a personal problem (he he) - not for work or school. I have tried to avoid adding Javascript to the things I need to learn but now I find myself needing to use it. I have several textareas in a form. I found (on this forum) a short piece of code (function) that will clear a textarea. It works just fine as long as I hard code the textarea name. I would like to use this one function and pass to it the name or Id of the text area I want to clear.
I want a script to receive a time in the 24 hour time format HH:mm (e.g. 18:30) and remove 15 minutes from it.The problem is that if the time inputted was 00:00, then how do I get to 23:45?
I'm sure it's easy if you're in the know.I can do this with PHP, but not with JS.I just need the function / basic line of code that does this. I can work out how to call it etc. myself.
I'm trying to write some javascript code that will swap two rows in a table, in an attempt to provide users with an easy and visual way to manually change the order of the listed items in a table.
The sample code works as it should in IE, and switches the two rows nicely.
In Mozilla however it fails the first time, but for some odd reason it works fine afterwards.
Mozilla doesn't seem to be removing the duplicated node the first time, which makes it appear as if an extra node is inserted into the table (which is actualy the case), but on subsequent attempts, it seems to be removing the duplicated node perfectly... Code:
This construction isn't working. The variable strName gets the name of the object (i.e. afkorting) but the alert doesn't work. Has somebody an idea what I'am doing wrong?
What I have going on is an input box where they type in an account name. And the autocompleter works perfectly if they choose an item in the list.However, I want them to have the option of entering an account that is not in the list. And when they do this, the onblur event triggers the opening of the New Account box where they can fill out the new account information and submit the form back.Once again when a selection is made it works just fine, it's when the user creates a new account that it doesn't trigger the "getAccountInfo" function.