title: Override core jQuery functions on Element level
body: <p>Is it possible to override core jQuery functions on Element level, so for an example, i want to override <strong>val()</strong> function only on one <strong>&lt;select&gt;</strong> element.</p>
  
  <p>if i do something like this</p>
  
  <pre><code>var element = $('select');
  var old_val = element.val;
  element.val = function () {
    console.log('The new val');
    return old_val.apply(this, arguments);
  }
  element.val(19);
  </code></pre>
  
  <p>it works as expected, but as soon as i address the same field with new jQuery instance</p>
  
  <pre><code>var element = $('select');
  element.val(19);
  </code></pre>
  
  <p>it stops working because we have new instance of jQuery object. if i fiddle with <strong>$.fn.val</strong> function i change that behavior for all objects who support val function, which is a bit to much for me. </p>
  
  <p>Any help will be appreciated.
  Thank you.</p>