搜尋 Mozilla 技術支援網站

防止技術支援詐騙。我們絕對不會要求您撥打電話或發送簡訊,或是提供個人資訊。請用「回報濫用」功能回報可疑的行為。

了解更多

http://www.dinersclub.com/airport-lounges.html locator stop working after load 14.0.1

more options

Just tried yesterday that locator works after updating FF to 14.0.1. After selecting city/country FF redirect to info page like normally, but just get frame with loading indicator and thats it.

IE works.

Just tried yesterday that locator works after updating FF to 14.0.1. After selecting city/country FF redirect to info page like normally, but just get frame with loading indicator and thats it. IE works.

所有回覆 (8)

more options

I get the same error (box is not filled in, Error Console shows "Error: TypeError: lounges is null; Source File: http://www.dinersclub.com/airport-lounges/scripts/airport-lounges.js; Line: 159"). The site's scripts seem to be falling down when extracting the country names from the XML file (the file is retrieved, but zero countries are extracted). Not sure why the change from earlier versions. Do you recall the last version of Firefox in which it worked normally?

more options

It works for me in a Firefox 13.0.1 version, but not in Firefox 14 or later including the current Nightly.

more options

Okay, it appears this is due to an intentional change in Firefox 14: Bug No. 737122 – Attr nodes shouldn't have children. See also: https://developer.mozilla.org/en/DOM/Attr

The airport lounge list is formatted as follows. It is composed of empty nodes and the data is stored in attributes (designed here in bold).


<lounge_link> <country name="Albania"> <city name="Tirana"> <lounge url="Tirana_Mother_Teresa_Airport_Tirana_Business_Lounge_Albania.xml" /> </city> </country> ... </lounge_link>

The script that extracts the list starts by looking at each node to see whether it is a country. If it is, it then retrieves the first childNode for the name attribute of the country.


var attributes = node.attributes; var _thisAttribute, attributeName, attributeValue; for(var i=0; i<attributes.length; i++) { _thisAttribute = attributes[i]; attributeName = _thisAttribute.name; if(_thisAttribute.childNodes[0]) { attributeValue = _thisAttribute.childNodes[0].nodeValue; } else { attributeValue = ""; }; newObj[attributeName] = attributeValue; }

Firefox 13 and earlier would return the following as the first childNode of the name attribute:


<TextNode textContent="Albania">

Starting in Firefox 14, the name attribute has no childNodes. Since it has always been simpler to retrieve the value of the attribute, I suspect this change won't break all that many sites. Fingers crossed.

more options

Heh, my mistake.

"Just tried yesterday that locator works after updating FF to 14.0.1"

Should be:

"Just tried yesterday that locator works. After updating FF to 14.0.1. not."

I had 13 and that worked. Now need to use IE or go back to 13. Or do like I always do: Print that page to .pdf in IE. :D

more options

jscher2000, so we are stuck with this? Hopefully this is not problem with too many pages.

more options

Hi skaffa, I don't see a solution for us end-users unless we build our own search tool...might be easier to use another browser until it's fixed.

more options

Is attributes still working?

  • attributes This property now always returns NULL.
more options

Is attributes still working?

I think they are saying that an attribute no longer has attributes of its own. Which makes sense: it has a name and a value, and that really is all one should need.