angular model for the "contenteditable" attribute
You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
This repo is archived. You can view files and clone it, but cannot push or open issues/pull-requests.
 
 
Go to file
Dmitri Akatov d8d7bf29e9 add a scenario dsl extension (mostly copied from the standard angular scenario dsl) 11 years ago
test add a scenario dsl extension (mostly copied from the standard angular scenario dsl) 11 years ago
.editorconfig Initial commit 11 years ago
.gitattributes Initial commit 11 years ago
.gitignore only use coffeescript for configuration and in tests 11 years ago
.jshintrc Initial commit 11 years ago
Gruntfile.coffee i don't like semicolons any more 11 years ago
README.md some explanation about caret behaviour in contenteditable elements. 11 years ago
angular-contenteditable-scenario.js add a scenario dsl extension (mostly copied from the standard angular scenario dsl) 11 years ago
angular-contenteditable.js use 2 spaces per tab 11 years ago
bower.json add a scenario dsl extension (mostly copied from the standard angular scenario dsl) 11 years ago
package.json avoid calling $scope.$apply twice in the same digest cycle if anything is listening on blur() or focus() 11 years ago

README.md

angular-contenteditable

An AngularJS directive to bind html tags with the contenteditable attribute to models.

Install

bower install angular-contenteditable

Usage

angular.module('myapp', ['contenteditable'])
    .controller('Ctrl', function($scope){
        $scope.model="<i>interesting</i> stuff" })
<div ng-controller="Ctrl">
  <span contenteditable="true"
        ng-model="model"
        strip-br="true"
        select-non-editable="true"></span></div>

Notice

In Chrome, when a contenteditable element X contains a non-contenteditable element Y as the last element, then the behaviour of the caret is the following:

  • When X has style dislay set to block or inline-block, then the caret moves to the very far right edge of X when it is immediately at the end of X (inserting spaces moves the caret back).

  • When X has style display set to inline, then the caret disappears instead.

Development

npm install
grunt build
grunt karma:e2e