contenteditable = true在应用javascript时停止工作

时间:2015-08-03 19:43:20

标签: javascript jquery css

嗨我有一个文本框,当我实现contenteditable它正在工作时工作正常。但是当我实现jquery和javascript时,contenteditable完全停止了工作。我不知道这是否正常,我们将非常感谢任何帮助。

HTML

<!DOCTYPE HTML>
<html>

<head>
    <link rel="stylesheet" type="text/css" href="style.css">
    <script src="http://code.jquery.com/jquery-1.9.1.min.js"></script>
    <script src="http://code.jquery.com/ui/1.9.2/jquery-ui.js"></script>
    <link rel="stylesheet" type="text/css" href="http://code.jquery.com/ui/1.9.2/themes/base/jquery-ui.css">
    <script src="//code.jquery.com/jquery-1.10.2.js"></script>
    <script src="//code.jquery.com/ui/1.11.4/jquery-ui.js"></script>
    <script type="text/javascript">
        $(function() {
            $(".note").resizable();
            $(".note").draggable();
        });
    </script>
    <title>Stickynote</title>
    <img src="images/logo.png">

</head>

<body>
    <div class="note" contenteditable="true">

    </div>
</body>

</html>

CSS

body {
    background-image: url("images/background.jpg");
    background-repeat: no-repeat;
    background-size: 100% 100%;
}

html {
    height: 100%;
}

html img {
    display: block;
    margin-left: auto;
    margin-right: auto;
}

.note {
    width: 300px;
    height: 300px;
    background-image: url("images/stickynote.png");
    background-repeat: no-repeat;
    background-size: 100% 100%;
    padding: 10px;
}

1 个答案:

答案 0 :(得分:1)

.draggable()阻止了可编辑的行为。你可以解决这个问题,如下所示:

$.fn.makeEditable = function () {
    return this.each(function () {
        $(this).on('cilck mousedown', function () {
            $(this).focus();
        });
    });
};

$('.note').draggable().resizable().makeEditable();