尝试使用箭头语法重写它
Trying to rewrite this using arrow syntax
我认为我可以做到这一点:
$('body').on('focus', '[contenteditable]', e => {
var self = $(e)
self.data('before', self.html())
return self
})
但是它说:"Cannot read property 'createDocumentFragment' of undefined"
$('body').on('focus', '[contenteditable]', myfocus)
function myfocus() {
var self = $(this)
self.data('before', self.html())
return self
}
p {
cursor:pointer
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<p contenteditable>Click here to edit</p>
你必须使用 $(e.target)
;
在myfocus
函数中,this
是一个引用,它引用了DOM element
触发了 event
。
在jquery函数中,this
指的是创建的event
,所以可以使用event.target
.[=24访问DOM
元素=]
event.target
属性 returns 触发 event
.
的元素
$('body').on('focus', '[contenteditable]', (e) => {
var self = $(e.target);
self.data('before', self.html())
return self;
})
p {
cursor:pointer
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<p contenteditable>Click here to edit</p>
我认为我可以做到这一点:
$('body').on('focus', '[contenteditable]', e => {
var self = $(e)
self.data('before', self.html())
return self
})
但是它说:"Cannot read property 'createDocumentFragment' of undefined"
$('body').on('focus', '[contenteditable]', myfocus)
function myfocus() {
var self = $(this)
self.data('before', self.html())
return self
}
p {
cursor:pointer
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<p contenteditable>Click here to edit</p>
你必须使用 $(e.target)
;
在myfocus
函数中,this
是一个引用,它引用了DOM element
触发了 event
。
在jquery函数中,this
指的是创建的event
,所以可以使用event.target
.[=24访问DOM
元素=]
event.target
属性 returns 触发 event
.
$('body').on('focus', '[contenteditable]', (e) => {
var self = $(e.target);
self.data('before', self.html())
return self;
})
p {
cursor:pointer
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<p contenteditable>Click here to edit</p>