ily*_*oli 5 jquery jquery-ui jquery-plugins
我正在编写一个jQuery插件来模拟一个可编辑的div.
这是我的代码:
(function($){
$.fn.editable = function(){
return this.each(function(){
var $this = $(this).hide();
var div = $('<div>'+$this.val()+'</div>').show().insertAfter($this).data('input',$this);
$this.data('div',div);
div.dblclick(function(){
$(this).hide();
$(this).data('input').val($(this).text()).show();
});
$this.blur(function(){
$(this).hide();
$(this).data('div').html($(this).val()).show();
});
$this.change(function(){
$(this).data('div').html($(this).val());
});
});
};
})(jQuery);
Run Code Online (Sandbox Code Playgroud)
到目前为止,这很好用..
现在,我想做的,并且不知道如何,如果隐藏的输入值改变,则使div文本改变.
意思是,如果我做$('#editable').val('new text')div应改变..
我无法手动触发更改事件,因为输入更改将发生在我无法控制的其他插件中.