summary |
shortlog |
log |
commit | commitdiff |
tree
raw |
patch |
inline | side by side (from parent 1:
6240d0b)
FF doesn't put carret at the end of new node, Chrome does.
var prefix = node.data.substr(0, startOffset);\r
var suffix = node.data.substr(endOffset);\r
var core = node.data.substr(startOffset, endOffset - startOffset);\r
var prefix = node.data.substr(0, startOffset);\r
var suffix = node.data.substr(endOffset);\r
var core = node.data.substr(startOffset, endOffset - startOffset);\r
- $(node).replaceWith(prefix + '<span wlxml-tag="' + target.val() + '">' + core + '</span>' + suffix); \r
+ var newNode = $('<span wlxml-tag="' + target.val() + '">' + core + '</span>');\r
+ $(node).replaceWith(newNode);\r
+ newNode.before(prefix);\r
+ newNode.after(suffix);\r
+ mediator.nodeCreated(newNode);\r
isDirty = true;\r
}\r
});\r
isDirty = true;\r
}\r
});\r
getCurrentNode: function() {\r
return view.currentNode;\r
},\r
getCurrentNode: function() {\r
return view.currentNode;\r
},\r
+ nodeCreated: function(node) {\r
+ view._markSelected(node);\r
+\r
+ var range = document.createRange();\r
+ range.selectNodeContents(node[0]);\r
+ range.collapse(false);\r
+\r
+ var selection = document.getSelection();\r
+ selection.removeAllRanges()\r
+ selection.addRange(range);\r
+ \r
+ },\r
nodeSelected: function(node) {\r
sideBarView.updateEditPane(node);\r
}\r
nodeSelected: function(node) {\r
sideBarView.updateEditPane(node);\r
}\r