【发布时间】:2016-07-15 14:26:14
【问题描述】:
我有一个在输入的 html 值之前添加的函数。问题是,一旦添加了该值,我想隐藏移动键盘。目前我正在使用 blur() 来执行此操作,但它会在有人输入值之前隐藏所有内容,以便我可以添加它。
该函数使用了一个类,该类在您第一次点击按钮时动态添加,因此 .on 点击在正文上。
有什么建议吗?
function addClassForReply() {
$(".reply-btn").click(function(e) {
$(".reply-btn").addClass('send-message');
});
}
addClassForReply();
function replyMessage() {
$("body").on('click', '.send-message', function(e){
var replyMessage = $(".message-reply textarea").val();
$(".message-reply").prepend(replyMessage);
$(".message-reply textarea").fadeOut().blur();
});
}
replyMessage();
HTML
<div class="message-reply">
<textarea placeholder="Reply to Linnie"></textarea>
</div>
<div class="message-mobile-footer">
<div class="nm-body">
<div class="row">
<!-- THIS IS WHERE THE CLASS GETS ADDED -->
<a class="btn default reply-btn">Reply</a>
</div>
</div>
</div>
【问题讨论】:
-
对于动态元素,我通常使用
$(document).on不确定这是否会与使用body有所不同 -
我确实尝试过document,但由于某种原因它不起作用。
-
所以当您单击
message-reply时您的.send-message事件正在触发,因此您无法输入文本?