2014-11-02 71 views

回答

11

您可以添加一個偵聽器input事件,並添加一個div文本需要這樣的時候:

var editor = ace.edit("editor") 
 

 
function update() { 
 
    var shouldShow = !editor.session.getValue().length; 
 
    var node = editor.renderer.emptyMessageNode; 
 
    if (!shouldShow && node) { 
 
     editor.renderer.scroller.removeChild(editor.renderer.emptyMessageNode); 
 
     editor.renderer.emptyMessageNode = null; 
 
    } else if (shouldShow && !node) { 
 
     node = editor.renderer.emptyMessageNode = document.createElement("div"); 
 
     node.textContent = "placeholder" 
 
     node.className = "ace_invisible ace_emptyMessage" 
 
     node.style.padding = "0 9px" 
 
     editor.renderer.scroller.appendChild(node); 
 
    } 
 
} 
 
editor.on("input", update); 
 
setTimeout(update, 100);
<!DOCTYPE html> 
 
<html> 
 
<head> 
 
    <meta charset="utf-8"> 
 
    <title>JS Bin</title> 
 
    <script src="http://ajaxorg.github.io/ace-builds/src/ace.js"></script> 
 
    <style> 
 
    #editor { position: absolute; top: 0; left: 0; right: 0; bottom: 0;} 
 
    </style> 
 
</head> 
 
<body> 
 
<div id="editor"></div> 
 
</body> 
 
</html>