Class: Element

Inherits:
Object
  • Object
show all
Includes:
Enumerable
Defined in:
lib/opal/jquery/element.rb

Overview

Element is a toll-free bridged class that maps to native jQuery instances.

As Element maps to a jQuery object, it can be used to represent 0, 1, or more actual DOM elements. Element exposes a more ruby-esqe interface to jQuery.

Usage

Element instances can be created in a number of ways.

Creating new Elements

A new element can be created using the Element.new method.

el = Element.new(:div)
el.id = "title"
p el
# => #<Element [<div id="title">]>

This is a nicer version of creating a javascript element using document.createElement and then wrapping it in a jquery object.

Finding existing elements in dom

Any valid jQuery selector expressions can be used with either Element.find or Element.[].

foos = Element.find('.foo')
# => #<Element [<div class="foo">]>

links = Element['a']
# => #<Element [<a>, <a class="bar">]>

Alternatively, Element.id can be used to find an element by its document id (or nil is returned for no match).

bar = Element.id 'bar'
# => Element or nil

DOM Content from string

Finally, an Element instance can be created by parsing a string of html content. This will parse multiple elements, like jquery, if string content contains them:

Element.parse '<div id="title">hello world</div>'
# => #<Element [<div id="title">]>

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Dynamic Method Handling

This class handles dynamic methods through the method_missing method

#method_missing(name, *args, &block) ⇒ Object



772
773
774
775
776
777
778
779
780
781
782
783
# File 'lib/opal/jquery/element.rb', line 772

def method_missing(name, *args, &block)
  args << block if block_given?

  %x{
    var method = self[#{name}];
    if (typeof(method) === 'function') {
      return method.apply(self, #{args.to_n});
    } else {
      return #{super};
    }
  }
end

Instance Attribute Details

#selectorObject (readonly)

Returns The original css selector used to create Element.

Returns:

  • The original css selector used to create Element



135
136
137
# File 'lib/opal/jquery/element.rb', line 135

def selector
  @selector
end

Class Method Details

.[](selector) ⇒ Element

Find elements by the given css selector.

Returns an empty Element if no matching elements.

Parameters:

  • selector (String)

    css selector

Returns:



73
74
75
# File 'lib/opal/jquery/element.rb', line 73

def self.[](selector)
  `$(#{selector})`
end

.expose(*methods) ⇒ Object

Expose jQuery plugins to become available in ruby code. By default, jQuery methods or plugins must be manually exposed as ruby methods. This method simply creates an aliasing ruby method to call the original javascript function.

Examples:

# Expose bootstraps jQuery `modal` function
Element.expose :modal

Element.find('.my-modal').modal

Parameters:

  • methods (String, Symbol)

    all methods to expose to ruby

Returns:

  • nil



128
129
130
131
132
# File 'lib/opal/jquery/element.rb', line 128

def self.expose(*methods)
  methods.each do |method|
    alias_native method
  end
end

.find(selector) ⇒ Element

Find elements by the given css selector.

Returns an empty Element if no matching elements.

Parameters:

  • selector (String)

    css selector

Returns:



63
64
65
# File 'lib/opal/jquery/element.rb', line 63

def self.find(selector)
  `$(#{selector})`
end

.id(id) ⇒ Element?

Find an element by the given id.

If no matching element, then nil will be returned. A matching element becomes the sole element in the returned collection.

Parameters:

  • id (String)

    dom element id

Returns:



84
85
86
87
88
89
90
91
92
93
94
# File 'lib/opal/jquery/element.rb', line 84

def self.id(id)
  %x{
    var el = document.getElementById(id);

    if (!el) {
      return nil;
    }

    return $(el);
  }
end

.new(tag = 'div') ⇒ Element

Create a new dom element, wrapped as Element instance with the given tag name.

Parameters:

  • tag (String) (defaults to: 'div')

    valid html tag name

Returns:



101
102
103
# File 'lib/opal/jquery/element.rb', line 101

def self.new(tag = 'div')
  `$(document.createElement(tag))`
end

.parse(str) ⇒ Element

Parse a string of html content into an Element instance.

If no valid elements in string, then an empty collection will be returned.

Parameters:

  • str (String)

    html content to parse

Returns:



111
112
113
# File 'lib/opal/jquery/element.rb', line 111

def self.parse(str)
  `$.parseHTML ? $($.parseHTML(str)) : $(str)`
end

Instance Method Details

#==(other) ⇒ Object



757
758
759
# File 'lib/opal/jquery/element.rb', line 757

def ==(other)
  `self.is(other)`
end

#[](name) ⇒ Object



403
404
405
406
407
408
409
# File 'lib/opal/jquery/element.rb', line 403

def [](name)
  %x{
    var value = self.attr(name);
    if(value === undefined) return nil;
    return value;
  }
end

#[]=(name, value) ⇒ Object

Set the given attribute attr on each element in this collection.



414
415
416
417
# File 'lib/opal/jquery/element.rb', line 414

def []=(name, value)
  `return self.removeAttr(name)` if value.nil?
  `self.attr(name, value)`
end

#add_class(class_name) ⇒ Object



312
# File 'lib/opal/jquery/element.rb', line 312

alias_native :add_class, :addClass

#after(content) ⇒ Object

Inserts the given content after each element in this set of elements. This method can accept either another Element, or a string.

Parameters:

  • content (String, Element)

    string or element to insert



143
# File 'lib/opal/jquery/element.rb', line 143

alias_native :after

#animate(params, &block) ⇒ Object

Set css values over time to create animations. The first parameter is a set of css properties and values to animate to. The first parameter also accepts a special :speed value to set animation speed. If a block is given, the block is run as a callback when the animation finishes.



515
516
517
518
519
520
521
522
# File 'lib/opal/jquery/element.rb', line 515

def animate(params, &block)
  speed = params.has_key?(:speed) ? params.delete(:speed) : 400
  if block_given?
    `self.animate(#{params.to_n}, #{speed}, block)`
  else
    `self.animate(#{params.to_n}, #{speed})`
  end
end

#any?true, false

Returns true if this collection has 1 or more elements, false otherwise.

Returns:

  • (true, false)


645
646
647
# File 'lib/opal/jquery/element.rb', line 645

def any?
  `self.length > 0`
end

#append(content) ⇒ Object Also known as: <<

Parameters:



245
# File 'lib/opal/jquery/element.rb', line 245

alias_native :append

#append_to(element) ⇒ Object



315
# File 'lib/opal/jquery/element.rb', line 315

alias_native :append_to, :appendTo

#append_to_bodyObject



440
441
442
# File 'lib/opal/jquery/element.rb', line 440

def append_to_body
  `self.appendTo(document.body)`
end

#append_to_headObject



444
445
446
# File 'lib/opal/jquery/element.rb', line 444

def append_to_head
  `self.appendTo(document.head)`
end

#at(index) ⇒ Element?

Returns the element at the given index as a new Element instance. Negative indexes can be used and are counted from the end. If the given index is outside the range then nil is returned.

Parameters:

  • index (Integer)

    index

Returns:



454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
# File 'lib/opal/jquery/element.rb', line 454

def at(index)
  %x{
    var length = self.length;

    if (index < 0) {
      index += length;
    }

    if (index < 0 || index >= length) {
      return nil;
    }

    return $(self[index]);
  }
end

#attr(*args) ⇒ Object



419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
# File 'lib/opal/jquery/element.rb', line 419

def attr(*args)
  %x{
    var size = args.length;
    switch (size) {
    case 1:
      var result = self.attr(args[0]);
      return( (result == null) ? nil : result );
      break;
    case 2:
      return self.attr(args[0], args[1]);
      break;
    default:
      #{raise ArgumentError, '#attr only accepts 1 or 2 arguments'}
    }
  }
end

#before(content) ⇒ Object

Insert the given content before each element in this set of elements. The given content can be either an Element, or a string.

Parameters:

  • content (String, Element)

    string or element to insert



151
# File 'lib/opal/jquery/element.rb', line 151

alias_native :before

#blurObject



200
# File 'lib/opal/jquery/element.rb', line 200

alias_native :blur

#children(selector = nil) ⇒ Object



197
# File 'lib/opal/jquery/element.rb', line 197

alias_native :children

#class_nameString

Returns the CSS class name of the firt element in self collection. If the collection is empty then an empty string is returned. Only the class name of the first element will ever be returned.

Returns:

  • (String)


475
476
477
478
479
480
# File 'lib/opal/jquery/element.rb', line 475

def class_name
  %x{
    var first = self[0];
    return (first && first.className) || "";
  }
end

#class_name=(name) ⇒ Object

Sets the CSS class name of every element in self collection to the given string. self does not append the class names, it replaces the entire current class name.

Parameters:

  • name (String)

    class name to set



487
488
489
490
491
492
493
494
# File 'lib/opal/jquery/element.rb', line 487

def class_name=(name)
  %x{
    for (var i = 0, length = self.length; i < length; i++) {
      self[i].className = name;
    }
  }
  self
end

#clickObject



344
# File 'lib/opal/jquery/element.rb', line 344

alias_native :click

#cloneElement

Clone all elements inside this collection, and return as a new instance.

Returns:



291
# File 'lib/opal/jquery/element.rb', line 291

alias_native :clone

#closest(selector) ⇒ Object



203
# File 'lib/opal/jquery/element.rb', line 203

alias_native :closest

#css(name, value = nil) ⇒ Object

Get or set css properties on each element in self collection. If only the name is given, then that css property name is read from the first element in the collection and returned. If the value property is also given then the given css property is set to the given value for each of the elements in self collection. The property can also be a hash of properties and values.



502
503
504
505
506
507
508
509
# File 'lib/opal/jquery/element.rb', line 502

def css(name, value=nil)
  if value.nil? && name.is_a?(String)
    return `self.css(name)`
  else
    name.is_a?(Hash) ? `self.css(#{name.to_n})` : `self.css(name, value)`
  end
  self
end

#data(*args) ⇒ Object



524
525
526
527
528
529
530
531
532
533
534
# File 'lib/opal/jquery/element.rb', line 524

def data(*args)
  %x{
    var result = self.data.apply(self, args);
    if (
      (typeof(result) === 'object') && !(result instanceof #{JQUERY_CLASS})
    ) {
      result = #{ JSON.from_object `result` };
    }
    return result == null ? nil : result;
  }
end

#detach(selector = nil) ⇒ Object



206
# File 'lib/opal/jquery/element.rb', line 206

alias_native :detach

#each {|`$(self[i])`| ... } ⇒ Object

Yields:

  • (`$(self[i])`)


554
555
556
557
558
559
# File 'lib/opal/jquery/element.rb', line 554

def each
  `for (var i = 0, length = self.length; i < length; i++) {`
    yield `$(self[i])`
  `}`
  self
end

#effect(name, *args, &block) ⇒ Object

Start a visual effect (e.g. fadeIn, fadeOut, …) passing its name. Underscored style is automatically converted (e.g. effect(:fade_in)). Also accepts additional arguments and a block for the finished callback.



539
540
541
542
543
544
# File 'lib/opal/jquery/element.rb', line 539

def effect(name, *args, &block)
  name = name.gsub(/_\w/) { |match| match[1].upcase }
  args = args.map { |a| a.to_n if a.respond_to? :to_n }.compact
  args << `function() { #{block.call if block_given?} }`
  `self[#{name}].apply(self, #{args})`
end

#emptyObject

Remove all child nodes from each element in this collection.



296
# File 'lib/opal/jquery/element.rb', line 296

alias_native :empty

#fade_toggle(duration = 400) ⇒ Object



385
# File 'lib/opal/jquery/element.rb', line 385

alias_native :fade_toggle, :fadeToggle

#filter(selector) ⇒ Element

Parameters:

  • selector (String)

Returns:



262
# File 'lib/opal/jquery/element.rb', line 262

alias_native :filter

#find(selector) ⇒ Object



212
# File 'lib/opal/jquery/element.rb', line 212

alias_native :find

#firstObject



561
562
563
# File 'lib/opal/jquery/element.rb', line 561

def first
  `self.length ? self.first() : nil`
end

#focusObject



209
# File 'lib/opal/jquery/element.rb', line 209

alias_native :focus

#getObject



299
# File 'lib/opal/jquery/element.rb', line 299

alias_native :get

#has_attribute?(name) ⇒ Boolean

Returns:

  • (Boolean)


436
437
438
# File 'lib/opal/jquery/element.rb', line 436

def has_attribute?(name)
  `self.attr(name) !== undefined`
end

#has_class?(class_name) ⇒ Object



318
# File 'lib/opal/jquery/element.rb', line 318

alias_native :has_class?, :hasClass

#heightObject



745
746
747
# File 'lib/opal/jquery/element.rb', line 745

def height
  `self.height()` || nil
end

#height=(value) ⇒ Object



388
# File 'lib/opal/jquery/element.rb', line 388

alias_native :height=, :height

#hide(duration = 400) ⇒ Object



188
# File 'lib/opal/jquery/element.rb', line 188

alias_native :hide

#html(content = undefined) ⇒ Object



565
566
567
568
569
570
571
572
573
# File 'lib/opal/jquery/element.rb', line 565

def html(content = undefined)
  %x{
    if (content != null) {
      return self.html(content);
    }

    return self.html() || '';
  }
end

#html=(content) ⇒ Object

Set the html content of each element in this collection to the passed content. Content can either be a string or another Element.

Parameters:



326
# File 'lib/opal/jquery/element.rb', line 326

alias_native :html=, :html

#idObject



575
576
577
578
579
580
# File 'lib/opal/jquery/element.rb', line 575

def id
  %x{
    var first = self[0];
    return (first && first.id) || "";
  }
end

#id=(id) ⇒ Object



582
583
584
585
586
587
588
589
590
591
592
# File 'lib/opal/jquery/element.rb', line 582

def id=(id)
  %x{
    var first = self[0];

    if (first) {
      first.id = id;
    }

    return self;
  }
end

#index(selector_or_element = nil) ⇒ Object



329
# File 'lib/opal/jquery/element.rb', line 329

alias_native :index

#inspectObject



598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
# File 'lib/opal/jquery/element.rb', line 598

def inspect
  %x{
    if      (self[0] === document) return '#<Element [document]>'
    else if (self[0] === window  ) return '#<Element [window]>'

    var val, el, str, result = [];

    for (var i = 0, length = self.length; i < length; i++) {
      el  = self[i];
      if (!el.tagName) { return '#<Element ['+el.toString()+']'; }

      str = "<" + el.tagName.toLowerCase();

      if (val = el.id) str += (' id="' + val + '"');
      if (val = el.className) str += (' class="' + val + '"');

      result.push(str + '>');
    }

    return '#<Element [' + result.join(', ') + ']>';
  }
end

#is(selector) ⇒ true, false

Returns:

  • (true, false)


257
# File 'lib/opal/jquery/element.rb', line 257

alias_native :is

#is?(selector) ⇒ Object



332
# File 'lib/opal/jquery/element.rb', line 332

alias_native :is?, :is

#lastElement

Returns a new Element instance containing the last element in this current set.

Returns:



275
# File 'lib/opal/jquery/element.rb', line 275

alias_native :last

#lengthInteger Also known as: size

Returns the number of elements in this collection. May be zero.

Returns:

  • (Integer)


637
638
639
# File 'lib/opal/jquery/element.rb', line 637

def length
  `self.length`
end

#next(selector = nil) ⇒ Object Also known as: succ



215
# File 'lib/opal/jquery/element.rb', line 215

alias_native :next

#not(selector) ⇒ Element

Parameters:

  • selector (String)

Returns:



267
# File 'lib/opal/jquery/element.rb', line 267

alias_native :not

#off(name, sel, block = nil) ⇒ Object



718
719
720
721
722
723
724
725
726
727
728
729
730
# File 'lib/opal/jquery/element.rb', line 718

def off(name, sel, block = nil)
  %x{
    if (sel == null) {
      return self.off(name);
    }
    else if (block === nil) {
      return self.off(name, sel.$$jqwrap);
    }
    else {
      return self.off(name, sel, block.$$jqwrap);
    }
  }
end

#offsetObject



550
551
552
# File 'lib/opal/jquery/element.rb', line 550

def offset
  Native(`self.offset()`)
end

#on(name, sel = nil, &block) ⇒ Object



658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
# File 'lib/opal/jquery/element.rb', line 658

def on(name, sel = nil, &block)
  %x{
    var has_args = #{block.arity} !== 0;

    var wrapper = function() {
      for(var args = new Array(arguments.length), i = 0, ii = args.length; i < ii; i++) {
        args[i] = arguments[i];
      }

      // Use preventDefault as a canary for native events
      if (has_args && args[0].preventDefault) {
        args[0] = #{Event.new `args[0]`};
      }

      return block.apply(null, args);
    };

    block.$$jqwrap = wrapper;

    if (sel == nil) {
      self.on(name, wrapper);
    }
    else {
      self.on(name, sel, wrapper);
    }
  }

  block
end

#one(name, sel = nil, &block) ⇒ Object



688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
# File 'lib/opal/jquery/element.rb', line 688

def one(name, sel = nil, &block)
  %x{
    var has_args = #{block.arity} !== 0;

    var wrapper = function() {
      for(var args = new Array(arguments.length), i = 0, ii = args.length; i < ii; i++) {
        args[i] = arguments[i];
      }

      // Use preventDefault as a canary for native events
      if (has_args && args[0].preventDefault) {
        args[0] = #{Event.new `args[0]`};
      }

      return block.apply(null, args);
    };

    block.$$jqwrap = wrapper;

    if (sel == nil) {
      self.one(name, wrapper);
    }
    else {
      self.one(name, sel, wrapper);
    }
  }

  block
end

#outer_height(include_margin = false) ⇒ Object



397
# File 'lib/opal/jquery/element.rb', line 397

alias_native :outer_height, :outerHeight

#outer_width(include_margin = false) ⇒ Object



394
# File 'lib/opal/jquery/element.rb', line 394

alias_native :outer_width, :outerWidth

#parent(selector = nil) ⇒ Element

Returns a new Element set with the parents of each element in this collection. An optional selector argument can be used to filter the results to match the given selector. Result may be empty.

Parameters:

  • selector (String) (defaults to: nil)

    optional filter

Returns:



161
# File 'lib/opal/jquery/element.rb', line 161

alias_native :parent

#parents(selector = nil) ⇒ Element

Returns a new Element set with all parents of each element in this collection. An optional selector may be provided to filter the selection. Resulting collection may be empty.

Examples:

Without filtering collection

Element.find('#foo').parents
# => #<Element [<div id="wrapper">, <body>, <html>]>

Using a filter

Element.find('#foo').parents('div')
# => #<Element [<div id="wrapper">]

Parameters:

  • selector (String) (defaults to: nil)

    optional filter

Returns:



179
# File 'lib/opal/jquery/element.rb', line 179

alias_native :parents

#positionObject



753
754
755
# File 'lib/opal/jquery/element.rb', line 753

def position
  Native(`self.position()`)
end

#prepend(content) ⇒ Object

Parameters:



250
# File 'lib/opal/jquery/element.rb', line 250

alias_native :prepend

#prev(selector = nil) ⇒ Object



182
# File 'lib/opal/jquery/element.rb', line 182

alias_native :prev

#prop(name, value = undefined) ⇒ Object

Get or set the property name on each element in collection.



304
305
306
# File 'lib/opal/jquery/element.rb', line 304

def prop(*args)
  Native.call(self, :prop, *args)
end

#remove(selector = nil) ⇒ Object



185
# File 'lib/opal/jquery/element.rb', line 185

alias_native :remove

#remove_attr(attr) ⇒ Object



335
# File 'lib/opal/jquery/element.rb', line 335

alias_native :remove_attr, :removeAttr

#remove_attribute(attr) ⇒ Object



373
# File 'lib/opal/jquery/element.rb', line 373

alias_native :remove_attribute, :removeAttr

#remove_class(class_name) ⇒ Object



338
# File 'lib/opal/jquery/element.rb', line 338

alias_native :remove_class, :removeClass

#respond_to_missing?(name, _) ⇒ Boolean

Returns:

  • (Boolean)


761
762
763
764
765
766
767
768
769
770
# File 'lib/opal/jquery/element.rb', line 761

def respond_to_missing?(name, _)
  %x{
    var method = self[#{name}];
    if (typeof(method) === 'function') {
      return true;
    } else {
      return #{super};
    }
  }
end

#scroll_leftObject



370
# File 'lib/opal/jquery/element.rb', line 370

alias_native :scroll_left, :scrollLeft

#scroll_left=(value) ⇒ Object



367
# File 'lib/opal/jquery/element.rb', line 367

alias_native :scroll_left=, :scrollLeft

#scroll_topObject



364
# File 'lib/opal/jquery/element.rb', line 364

alias_native :scroll_top, :scrollTop

#scroll_top=(value) ⇒ Object



361
# File 'lib/opal/jquery/element.rb', line 361

alias_native :scroll_top=, :scrollTop

#serializeObject



253
# File 'lib/opal/jquery/element.rb', line 253

alias_native :serialize

#serialize_arrayArray<Hashes>

Serializes a form into an Array of Hash objects.

Returns:

  • (Array<Hashes>)


735
736
737
# File 'lib/opal/jquery/element.rb', line 735

def serialize_array
  `self.serializeArray()`.map { |e| Hash.new(e) }
end

#show(duration = 400) ⇒ Object



191
# File 'lib/opal/jquery/element.rb', line 191

alias_native :show

#siblings(selector = nil) ⇒ Object



218
# File 'lib/opal/jquery/element.rb', line 218

alias_native :siblings

#slide_down(duration = 400) ⇒ Object



376
# File 'lib/opal/jquery/element.rb', line 376

alias_native :slide_down, :slideDown

#slide_toggle(duration = 400) ⇒ Object



382
# File 'lib/opal/jquery/element.rb', line 382

alias_native :slide_toggle, :slideToggle

#slide_up(duration = 400) ⇒ Object



379
# File 'lib/opal/jquery/element.rb', line 379

alias_native :slide_up, :slideUp

#stopObject

Stop any currently running animations on element.



285
# File 'lib/opal/jquery/element.rb', line 285

alias_native :stop

#submitObject



341
# File 'lib/opal/jquery/element.rb', line 341

alias_native :submit

#tag_nameObject



594
595
596
# File 'lib/opal/jquery/element.rb', line 594

def tag_name
  `self.length > 0 ? self[0].tagName.toLowerCase() : #{nil}`
end

#text(text = nil) ⇒ String

Get or set the text content of each element in this collection. Setting the content is provided as a compatibility method for jquery. Instead #text= should be used for setting text content.

If no text content is provided, then the text content of this element will be returned.

Parameters:

  • text (String) (defaults to: nil)

    text content to set

Returns:

  • (String)

See Also:



232
# File 'lib/opal/jquery/element.rb', line 232

alias_native :text

#text=(text) ⇒ Object

Set text content of each element in this collection.

Parameters:

  • text (String)

See Also:



352
# File 'lib/opal/jquery/element.rb', line 352

alias_native :text=, :text

#to_nObject



399
400
401
# File 'lib/opal/jquery/element.rb', line 399

def to_n
  self
end

#to_sObject



621
622
623
624
625
626
627
628
629
630
631
632
633
# File 'lib/opal/jquery/element.rb', line 621

def to_s
  %x{
    var val, el, result = [];

    for (var i = 0, length = self.length; i < length; i++) {
      el  = self[i];

      result.push(el.outerHTML)
    }

    return result.join(', ');
  }
end

#toggle(duration = 400) ⇒ Object



194
# File 'lib/opal/jquery/element.rb', line 194

alias_native :toggle

#toggle_classObject



355
# File 'lib/opal/jquery/element.rb', line 355

alias_native :toggle_class, :toggleClass

#trigger(event) ⇒ Object

Trigger an event on this element. The given event specifies the event type.

Parameters:

  • event (String, Symbol)

    event type



240
# File 'lib/opal/jquery/element.rb', line 240

alias_native :trigger

#valueObject



741
742
743
# File 'lib/opal/jquery/element.rb', line 741

def value
  `self.val()` || ""
end

#value=(value) ⇒ Object



358
# File 'lib/opal/jquery/element.rb', line 358

alias_native :value=, :val

#visible?Boolean

Returns:

  • (Boolean)


546
547
548
# File 'lib/opal/jquery/element.rb', line 546

def visible?
  `self.is(':visible')`
end

#widthObject



749
750
751
# File 'lib/opal/jquery/element.rb', line 749

def width
  `self.width()` || nil
end

#width=(value) ⇒ Object



391
# File 'lib/opal/jquery/element.rb', line 391

alias_native :width=, :width

#wrap(wrapper) ⇒ Element

Parameters:

  • wrapper (String, Element)

    html content, selector or element

Returns:



280
# File 'lib/opal/jquery/element.rb', line 280

alias_native :wrap