Class Index [+]

Quicksearch

Ramaze::Helper::XHTML

Provides shortcuts to the link/script tags.

The XHTML helper can be used for generating CSS and Javascript tags. Generating a CSS tag can be done by calling the css() method:

    css 'reset', 'screen', :only => 'ie'

This would result in a stylesheet named “reset.css“ being loaded only when the user is using Internet Explorer.

Constants

LINK_TAG
SCRIPT_TAG

Public Instance Methods

css(name, media = 'screen', options = {}) click to toggle source

Generate a CSS tag based on the name, media type and a hash containing additional options. For example, if we want to load the stylesheet only when the user is using Internet Explorer we would have to add a key ‘only’ with a value of ‘ie’ to the hash.

@param [String] name The name of the CSS file to load. @param [String] media The media type for which the stylesheet should be

 loaded.

@param [Hash] options A hash containing additional options for the

 stylesheet tag.

@example

  # A very basic example.
  css 'reset'

  # Oh shiny, IE only
  css 'reset', 'screen', :only => 'ie'

@return [String] String containing the stylesheet tag.

    # File lib/ramaze/helper/xhtml.rb, line 38
38:       def css(name, media = 'screen', options = {})
39:         if media.respond_to?(:keys)
40:           options = media
41:           media = 'screen'
42:         end
43: 
44:         if only = options.delete(:only) and only.to_s == 'ie'
45:           "<!--[if IE]>#{css(name, media, options)}<![endif]-->"
46:         else
47:           if name =~ /^http/
48:             LINK_TAG % [name, media]
49:           else
50:             prefix = options[:prefix] || 'css'
51:             LINK_TAG % [
52:               "#{Ramaze.options.prefix.chomp("/")}/#{prefix}/#{name}.css",
53:               media
54:             ]
55:           end
56:         end
57:       end
css_for(*args) click to toggle source

The css_for method can be used when you want to load multiple stylesheets and don’t want to call the css() method over and over again.

@example

  # This is pretty basic
  css_for 'reset', '960', 'style'

  # Loading multiple stylesheets with custom options
  css_for ['reset', 'print'], ['960', 'print']

@see css() @param [Array] args An array containing either the names of all

 stylesheets to load or a collection of arrays of which each array
 defines the name, media and additional parameters.

@return [String]

    # File lib/ramaze/helper/xhtml.rb, line 77
77:       def css_for(*args)
78:         args.map{|arg| css(*arg) }.join("\n")
79:       end
js(name, options={}) click to toggle source

Generates a Javascript tag that loads an external Javascript file. This tag can’t be used for loading inline Javascript files.

@example

  # Simple isn't it?
  js 'jquery'

  # Let's change the directory to "some_other_directory"
  js 'jquery', :prefix => 'some_other_directory'

@param [String] name The name of the Javascript file that should be

 loaded.

@param [Hash] options Hash that can contain a :prefix key that defines

 the directory in which the JS file is located. By default this key is
 set to "js".

@return [String]

     # File lib/ramaze/helper/xhtml.rb, line 99
 99:       def js(name, options={})
100:         if name =~ /^http/ # consider it external full url
101:           SCRIPT_TAG % name
102:         else
103:           SCRIPT_TAG % "#{Ramaze.options.prefix.chomp("/")}/#{options[:prefix] || 'js'}/#{name}.js"
104:         end
105:       end
js_for(*args) click to toggle source

Generate multiple Javascript tags using the js() method.

@example

  # Pretty simple isn't it?
  js_for 'jquery', 'application', 'jquery.gritter'

@param [Array] args Array containing the Javascript files to load. @return [String]

     # File lib/ramaze/helper/xhtml.rb, line 117
117:       def js_for(*args)
118:         args.map{|arg| js(*arg) }.join("\n")
119:       end

Disabled; run with --debug to generate this.

[Validate]

Generated with the Darkfish Rdoc Generator 1.1.6.