Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • SEARCH
  • Home
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 3499216
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: May 18, 20262026-05-18T12:35:05+00:00 2026-05-18T12:35:05+00:00

I have inherited a website! which was designed to work in IE and only

  • 0

I have inherited a website! which was designed to work in IE and only IE it seems.. I’ve now been asked to make the site run in Firefox. I’ve fixed most of the bugs without any problems but this one has me stumped.

setTimeout(fDelayedFunc, 1000);

This line of Javascript, works fine in IE but in Firefox the function fDelayedFunc never fires. I’ve removed the setTimeout and the function wrapper and tried running the code as part of the main function. This works without any problems at all.

There is alot of code involved but here’s the main but I’m having trouble with. If you’d like to see anymore of the code please let me know.

            setTimeout(fDelayedFunc, 0);

            //Save the current text box value
            var vCurrentTBValue = vJQElement.val();

            function fDelayedFunc() {

                if (vJQElement.val() == vCurrentTBValue) {
                    alert("test");

                    //Get position list box should appear in
                    var vTop = vJQElement.position().top + 25;
                    var vLeft = vJQElement.position().left;

                    //Had to put a special case in for account due to the position co-ords being wrong. This is due to a css error
                    if (vHiddenFieldToWriteTo == "#ctl00_ContentPlaceHolder1_hfAccountCode") {
                        vTop = vJQElement.position().top + 58;
                        vLeft = vJQElement.position().left + 200;
                    }
                    else {
                        vTop = vJQElement.position().top + 25;
                        vLeft = vJQElement.position().left;
                    }


                    //Create div element
                    var vDivElement = $("<div id='divSearchBox' style='position:absolute; top:" + vTop + ";left:" + vLeft + "; z-index: 40000;'></div>");

                    //Create list box
                    var vListBox = $("<select id='lbResults' tabIndex='" + vJQElement.attr("tabIndex") + "' size='4' style='height:400px;'></select>");


                    //Bind a function to the list box which will select the item via either tab or enter
                    vListBox.bind("keydown", function() {
                        //Check if tab or enter has been pressed
                        if (event.keyCode == 9 || event.keyCode == 13) {
                            //Set hidden value to the selected items code
                            $(vHiddenFieldToWriteTo).val($(vListBox.find(":selected")).val());

                            //Create postback
                            $('#ctl00_ContentPlaceHolder1_wizNewConsignment_btnRefresh').click();
                        }
                        //Check if the up arrow has been pressed at the top of the listbox
                        else if (event.keyCode == 38 && $(vListBox.find(":selected")).val() == $(vListBox.find(":first")).val()) {
                            //Focus back on the search box
                            vElement.focus();
                        }
                    }).bind("dblclick", function() {
                        //Set hidden value to the selected items code
                        $(vHiddenFieldToWriteTo).val($(vListBox.find(":selected")).val());

                        //Create postback
                        $('#ctl00_ContentPlaceHolder1_wizNewConsignment_btnRefresh').click();
                    });

                    //Get search field
                    var vSearchText = vJQElement.val();

                    var vDepotID = $("#ctl00_ContentPlaceHolder1_wizNewConsignment_hfDepotID").val();
                    var vCustomerID = $("#ctl00_ContentPlaceHolder1_wizNewConsignment_hfCustomerID").val();
                    var vCountryID = $("#ctl00_ContentPlaceHolder1_wizNewConsignment_hfCountryID").val();
                    var vConsignee = vJQElement.attr("boolConsignee");

                    //Set a loading image in place until call completed
                    vJQElement.css("backgroundImage", "url(images/small-loader.gif)");
                    vJQElement.css("backgroundRepeat", "no-repeat");
                    vJQElement.css("backgroundPosition", "right");





                    //Make AJAX call
                    $.ajax({
                        type: "POST",
                        contentType: "application/json; charset=utf-8",
                        url: "NewConsignment.asmx/fGetAddressesAndIDs",
                        data: "{'strSearchText' : '" + vSearchText + "', 'intDepotID' : '" + vDepotID + "', 'intCustomerID' : '" + vCustomerID + "', 'intCountryID' : '" + vCountryID + "', 'boolConsignee' : '" + vConsignee + "'}",
                        dataType: "json",
                        success: function fGetAddressesAndIDsResult(GetAddressesAndIDsResult) {
                            //Make sure there are results
                            if (GetAddressesAndIDsResult != null && GetAddressesAndIDsResult != "") {
                                var vNumberOfResults = 0;
                                var vNumberOfLearntAddresses = 0;
                                var vLearntAddressUniqueID = "";

                                //Try to get results (first call will work on Linux and catch will work on Windows)
                                try {
                                    //Check array exists (if this fails will go to catch)
                                    if (GetAddressesAndIDsResult.d.length > 0) {
                                        //Loop through the results
                                        $.each(GetAddressesAndIDsResult.d, function() {
                                            //Check for results
                                            if (this.length > 0) {
                                                //Evaluate JSON
                                                var vAddress = eval("(" + this + ")");

                                                //Create list item
                                                var vOption = $("<option class='AddressOption' value='" + vAddress.uniqueID + "'>" + vAddress.briefDescription + "</option>");

                                                //Find out number of learnt addresses
                                                if (vAddress.uniqueID.indexOf("ConLA") != -1) {
                                                    vNumberOfLearntAddresses++;
                                                    vLearntAddressUniqueID = vAddress.uniqueID;
                                                }

                                                //Add list item to list box
                                                vListBox.append(vOption);

                                                //Mark result added
                                                vNumberOfResults++;
                                            }
                                        });
                                    }
                                }
                                catch (err) {
                                    //Loop through the results
                                    $.each(GetAddressesAndIDsResult, function() {
                                        //Check for results
                                        if (this.length > 0) {
                                            //Evaluate JSON
                                            var vAddress = eval("(" + this + ")");

                                            //Create list item
                                            var vOption = $("<option class='AddressOption' value='" + vAddress.uniqueID + "'>" + vAddress.briefDescription + "</option>");

                                            //Find out number of learnt addresses
                                            if (vAddress.uniqueID.indexOf("ConLA") != -1) {
                                                vNumberOfLearntAddresses++;
                                                vLearntAddressUniqueID = vAddress.uniqueID;
                                            }

                                            //Add list item to list box
                                            vListBox.append(vOption);

                                            //Mark result added
                                            vNumberOfResults++;
                                        }
                                    });
                                }

                                //Check if only 1 learnt address was found
                                if (vNumberOfLearntAddresses == 1) {
                                    //Auto select this address
                                    //Set hidden value to the selected items code
                                    $(vHiddenFieldToWriteTo).val(vLearntAddressUniqueID);

                                    //Create postback
                                    $('#ctl00_ContentPlaceHolder1_wizNewConsignment_btnRefresh').click();
                                }

                                //Add list box to div
                                vDivElement.append(vListBox);

                                //Check if any results exist in div
                                if (vNumberOfResults != 0) {
                                    //Append div to page
                                    $("body").append(vDivElement);

                                    //Auto select first item
                                    vListBox.find(".AddressOption:first").attr("selected", "true");
                                }
                            }

                            //Hide loading image
                            vJQElement.css("backgroundImage", "none");
                        },
                        error: function(XMLHttpRequest, textStatus, errorThrown) {
                            //Inform user of error
                            alert("An error occured, please try again");

                            //Hide loading image
                            vJQElement.css("backgroundImage", "none");
                        }
                    });
                }

             }
  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-05-18T12:35:06+00:00Added an answer on May 18, 2026 at 12:35 pm

    Try this:

    setTimeout(function() { fDelayedFunc(); }, 0);
    
    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

I have inherited some HTML code and have been asked to align the two
I have a website which maintenance I've inherited, which is a big hairy mess.
I'm trying to make a sidebar which on a website which will have a
I recently inherited a website and they have a simple back-end area which was
I have recently inherited a large website. I have been checking it for security
I have inherited an big existing PHP application (website actually) that runs on Apache.
I've inherited development for a website on vps hosting, and have login info for
I have inherited a web site project that makes use of a number of
I have inherited a Drupal 6 site to maintain. I am new to Drupal
I have inherited work from a previous employee. The issue I'm having is a

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.