我们的志愿者还没有将这篇文章翻译为 中文 (简体)。加入我们帮助完成翻译!
Microformats allow web sites to provide semantic data to the browser in order to make it possible to present summaries of the information on a page without having to know how to parse the document itself. Firefox 3 implements a global Microformats
object that provides access to microformats. This object and its API make finding and reading microformats easy to do.
Loading the microformats API
The Microformats
object is created using the new JavaScript script loader added to Firefox 3. To use the API, you need to first load the object:
Components.utils.import("resource://gre/modules/Microformats.js");
Once you've loaded the microformats API, you can manage microformats using the methods listed here; for information about parsing microformats, see Parsing microformats in JavaScript.
Predefined microformats
Firefox 3 provides definitions implementing several common microformats:
adr
- Represents an address (such as a street or mailing address).
geo
- Represents a geographical location using latitude and longitude.
hCard
- Represents contact information for a person.
hCalendar
- Represents a calendar appointment entry.
tag
- Used to add tags to other microformats.
Methods
add()
Adds a new microformat to the microformat module.
add(name, definition);
Parameters
name
- The name of the microformat to add to the microformat module.
definition
- A JavaScript structure describing the microformat. See Describing microformats in JavaScript for details.
count()
Counts the number of microformats in a document that match specified criteria.
var numMicroformats = Microformats.count(name, rootElement, options);
Parameters
name
- The name of the microformat to count.
rootElement
- Required. The DOM element at which to begin the search. If you want to search the entire document, specify
content.document
. options
- Optional. If provided, this is a JavaScript object that contains zero or more of the following flags:
recurseExternalFrames
- If
true
, child frames are included in the search. The default istrue
.showHidden
- If
true
, hidden microformats are added; otherwise they're left out. The default isfalse
.debug
- Specify
true
if debug mode is in use; otherwise, specifyfalse
. The default isfalse
.
Return value
An integer value indicating the number of microformats that match the specified criteria.
debug()
Returns a string that describes a microformat object.
debug()
on a microformat object: microformatObject.debug()
instead of using this method if you prefer.var dumpString = debug(microformatObject)
Parameters
microformatObject
- The microformat object to dump.
Return value
A string that describes the contents of the specified microformat object.
get()
Returns an array of microformat objects corresponding to the microformats found that match specified criteria.
var microformatsArray = Microformats.get(name, rootElement, options, targetArray);
Parameters
name
- The name of the microformat to find.
rootElement
- Required. The DOM element at which to begin the search. If you want to search the entire document, specify
content.document
. options
- Optional. If provided, this is a JavaScript object that contains zero or more of the following flags:
recurseExternalFrames
- If
true
, child frames that reference external content are included in the search. The default istrue
.showHidden
- If
true
, hidden microformats are added; otherwise they're left out. The default isfalse
.debug
- Specify
true
if debug mode is in use; otherwise, specifyfalse
. The default isfalse
.
targetArray
- Optional. If provided, this is an array of microformat objects to which the search results are added.
Return value
A new array of microformat objects matching the search criteria, or the array specified by microformats
with the newly found microformat objects added.
getNamesFromNode()
Returns a space-delineated list of microformat names that correspond to the specified microformat node.
var nameList = Microformats.getNamesFromNode(node);
Parameters
node
- The node for which to retrieve a list of microformat names.
Return value
If the specified node
is a microformat, the result is a space-delineated string listing all the microformat names that correspond to the node. If the node isn't a microformat, nothing is returned.
getParent()
Returns the parent node of the specified microformat or child of a microformat.
var parentNode = Microformats.getParent(node);
Parameters
node
- The node whose parent you wish to retrieve.
Return value
The parent of the specified node. Returns nothing if the specified node
isn't a microformat or the child of a microformat.
isMicroformat()
Determines whether or not the specified DOM node is a microformat.
var flag = Microformats.isMicroformat(node);
Parameters
node
- The DOM node to check to see if it's a microformat.
Return value
true
if the node is a microformat, otherwise false
.
true
if the node is a child of a microformat.