Sha256: 4ef01f874b617d0df3e3d54a822aa588f9103dbdf6ea38e5072dcfc020a15c37

Contents?: true

Size: 1.93 KB

Versions: 3

Compression:

Stored size: 1.93 KB

Contents

/*
 * jQuery plugin: fieldSelection - v0.1.0 - last change: 2006-12-16
 * (c) 2006 Alex Brem <alex@0xab.cd> - http://blog.0xab.cd
 */
(function() {
  var fieldSelection = {
    getSelection: function() {
      var e = this.jquery ? this[0] : this;
      return (
        /* mozilla / dom 3.0 */
        ('selectionStart' in e && function() {
          var l = e.selectionEnd - e.selectionStart;
          return { start: e.selectionStart, end: e.selectionEnd, length: l, text: e.value.substr(e.selectionStart, l) };
        }) ||
        /* exploder */
        (document.selection && function() {
          e.focus();
          var r = document.selection.createRange();
          if (r == null) {
            return { start: 0, end: e.value.length, length: 0 }
          }
          var re = e.createTextRange();
          var rc = re.duplicate();
          re.moveToBookmark(r.getBookmark());
          rc.setEndPoint('EndToStart', re);
          return { start: rc.text.length, end: rc.text.length + r.text.length, length: r.text.length, text: r.text };
        }) ||
        /* browser not supported */
        function() {
          return { start: 0, end: e.value.length, length: 0 };
        }
      )();
    },

    replaceSelection: function() {
      var e = this.jquery ? this[0] : this;
      var text = arguments[0] || '';
      return (
        /* mozilla / dom 3.0 */
        ('selectionStart' in e && function() {
          e.value = e.value.substr(0, e.selectionStart) + text + e.value.substr(e.selectionEnd, e.value.length);
          return this;
        }) ||
        /* exploder */
        (document.selection && function() {
          e.focus();
          document.selection.createRange().text = text;
          return this;
        }) ||
        /* browser not supported */
        function() {
          e.value += text;
          return this;
        }
      )();
    }
  };
  jQuery.each(fieldSelection, function(i) { jQuery.fn[i] = this; });
})();

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
pages_core-3.4.3 vendor/assets/javascripts/jquery.fieldselection.js
pages_core-3.5.1 vendor/assets/javascripts/jquery.fieldselection.js
pages_core-3.4.2 vendor/assets/javascripts/jquery.fieldselection.js