2016-04-21 59 views
2

我已經建立了有功能的onblur當div模糊檢查內容更改?

<div class="inline-edit" contenteditable="true"></div> 

$(document).ready(function(){ 
$('div.inline-edit').blur(function() 
{ 
    //functionality 
}); 
}); 

一些內容編輯的div和所有工作爵爲我設置的功能。

然而問題是,即使模糊甚至激發,功能也會始終發生,即使可編輯div中的內容永遠不會改變!

由於平變化方法僅適用於輸入/文本域等 我很好奇,如果有一個簡單的辦法〜像做:

$(document).ready(function(){ 
$('div.inline-edit').blur(function() 
{ 
    if($('div.inline-edit').contentChanged()) 
    { 
    //functionality 
    } 
}); 
}); 

回答

0

你也可以尋找keypressdiv內。

var changed = false; 

$('#your-div').keypress(function(){ 
    changed = true; 
}); 

或者如果您的div數據非常簡單,您可以保存原始內容並在需要時進行比較。

+0

抱歉花了這麼長時間才真正接受答案。這工作爲我所需要的,謝謝! – Killzerman

0

如果僅僅使用1個格,我會成立了一箇舊的和新的變量,並比較他們模糊。

$(document).ready(() => { 
    var oldVal = $('.inline-edit').val(); 

    $('.inline-edit').blur(() => { 
    let newVal = $('.inline-edit').val(); 

    if (newVal === oldVal) { 
     return 
    } 

    //functionality 
    }); 

});