2 * Simple Placeholder-based Localization
4 * Call on a selection of HTML which contains <msg key="message-key" /> elements or elements with
5 * title-msg="message-key" or alt-msg="message-key" attributes. <msg /> elements will be replaced
6 * with localized text, elements with title-msg and alt-msg attributes will receive localized title
9 * Note that "msg" elements must have html namespacing such as "<html:msg />" to be compatible with
13 * <p class="somethingCool">
14 * <html:msg key="my-message" />
15 * <img src="something.jpg" title-msg="my-title-message" alt-msg="my-alt-message" />
20 * <p class="somethingCool">
22 * <img src="something.jpg" title="My Title Message" alt="My Alt Message" />
28 * Localizes a DOM selection by replacing <msg /> elements with localized text and adding
29 * localized title and alt attributes to elements with title-msg and alt-msg attributes
32 * @param Object: options Map of options
33 * * prefix: Message prefix to use when localizing elements and attributes
36 $.fn.localize = function( options ) {
37 options = $.extend( { 'prefix': '' }, options );
39 .find( 'msg,html\\:msg' )
42 .text( mediaWiki.msg( options.prefix + $(this).attr( 'key' ) ) )
43 .replaceWith( $(this).html() );
46 .find( '[title-msg]' )
49 .attr( 'title', mw.msg( options.prefix + $(this).attr( 'title-msg' ) ) )
50 .removeAttr( 'title-msg' );
56 .attr( 'alt', mw.msg( options.prefix + $(this).attr( 'alt-msg' ) ) )
57 .removeAttr( 'alt-msg' );
61 } )( jQuery, mediaWiki );
63 // Let IE know about the msg tag before it's used...
64 document.createElement( 'msg' );