我有这段代码:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title></title>
<script src="lib/require.js" data-main="app"></script>
</head>
<body>
<button id="remover">Remove</button>
</body>
</html>
require.config({
paths: {
'jquery': 'https://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min',
'mylib': 'applib/mylib'
}
});
require(['mylib'], function(teller){
teller.tell('Hello there');
$(function(){
$('#remover').on('click', function(){
teller.remove();
})
})
});
define(['jquery'], function($){
var tell = function(msg){
$('body').append( $('<p>').text(msg).addClass('teller') );
};
var remove = function(){
$('#remover').on('click', function(){
$('body').find('.teller').remove();
});
};
return {
tell: tell,
remove: remove
}
});
我不明白,为什么按两次按钮才能删除该元素。有谁可以向我解释一下?
答案 0 :(得分:0)
你在mylib.js中的删除功能也不需要监听点击,因为你已经在app.js中听取了点击。
您可以将删除功能更改为:
var remove = function(){
$('body').find('.teller').remove();
};