我刚开始学习js,需要一点帮助:我有以下功能:
//SET CHAT BEHAVIOR
function chatSettings() {
console.log('ChatSettings called')
function BtnAndScrollBar(texteditor) {
console.log('BTNAndScrollBar called');
const sendBtn = $('.cl.active').find('.sendBtn');
const attachBtn = $('.cl.active').find('.attachBtn');
console.log(sendBtn)
}
function sendAndDeleteMessage(send) {
console.log(send);
}
var sendBtn = $('.cl.active').find('.sendBtn');
sendBtn.mousedown(function () {
sendAndDeleteMessage(this);
});
var textEditor1 = $('.cl.active').find('.chatTextarea');
textEditor1.on('focus change mousedown mouseout keyup mouseup', function (){
console.log(this);
BtnAndScrollBar(this)
});
}
$('document').ready(function () {
console.log('hello');
$('.tabs').tabs();
chatSettings();
});
我准备了一个js.fiddle#cl1
- 正如您在单击文本区域时从 console.log 中看到的那样,即使.cl.active
随着相应的 TAB 切换,eventListener 也总是监听。
如果处于活动状态,则文本区域中的事件只是相关.cl
的。我的目标是将所有三个 eventListener 包装成一个并将事件应用于活动流中的文本区域,但我尝试的所有方法都出错了......有人可以帮忙吗?#不要重复自己#DRY