Rose::HTML::Script - Object representation of the "script" HTML tag.
$script = Rose::HTML::Script->new(src => '/main.js');
print $script->html;
$script =
Rose::HTML::Script->new(
script => 'function addThese(a, b) { return a + b }');
print $script->html;
...
Rose::HTML::Script is an object representation of a "script" HTML tag
used to reference or wrap scripts (e.g., JavaScript).
This class inherits from, and follows the conventions of,
Rose::HTML::Object. Inherited methods that are not overridden will not be
documented a second time here. See the Rose::HTML::Object documentation for
more information.
Valid attributes:
charset
class
defer
dir
id
lang
onclick
ondblclick
onkeydown
onkeypress
onkeyup
onmousedown
onmousemove
onmouseout
onmouseover
onmouseup
src
style
title
type
xml:lang
Required attributes (default values in parentheses):
type (text/javascript)
Boolean attributes:
defer
- new PARAMS
- Constructs a new Rose::HTML::Script object based on PARAMS, where PARAMS
are name/value pairs. Any object method is a valid parameter name.
- default_support_older_browsers [BOOL]
- Get or set a boolean value that indicates whether or not the XHTML
produced by objects of this class will, by default, attempt to support
older web browsers that have trouble parsing the comments used to wrap
script contents. The default value is true. See the support_older_browsers
object method for some examples.
- contents [TEXT]
- Get or set the contents of the script tag.
- script [TEXT]
- This is an alias for the contents method.
- src [URI]
- Get or set the URI of the script file. If this attribute is set, then the
contents of of the script tag are ignored when it comes time to produce
the HTML.
- support_older_browsers [BOOL]
- Get or set a boolean value that indicates whether or not the XHTML
produced by this object will attempt to support older web browsers that
have trouble parsing the comments used to wrap script contents. If
undefined, the value of this attribute is set to the return value of the
default_support_older_browsers class method.
Examples:
$script =
Rose::HTML::Script->new(script => 'function foo() { return 123; }');
print $script->xhtml;
This prints the following big mess which helps older browsers
while also remaining valid XHTML.
<script type="text/javascript"><!--//--><![CDATA[//><!--
function foo() { return 123; }
//--><!]]></script>
Now the other mode:
$script->support_older_browsers(0);
print $script->xhtml;
which prints:
<script type="text/javascript">
//<![CDATA[
function foo() { return 123; }
//]]>
</script>
See <http://hixie.ch/advocacy/xhtml> for more
information on this topic.
John C. Siracusa (siracusa@gmail.com)
Copyright (c) 2010 by John C. Siracusa. All rights reserved. This program is
free software; you can redistribute it and/or modify it under the same terms
as Perl itself.