Javascript 未捕获Textarea滚动事件
我有一个Javascript 未捕获Textarea滚动事件,javascript,jquery,asp.net,Javascript,Jquery,Asp.net,我有一个textarea,它包含条款和条件,并且可以滚动。当我向下滚动textarea时,我想启用一个复选框,用户可以选中并继续。问题是它不起作用 <textarea name="terms" runat="server" id="terms" style="resize:none" disabled="disabled" rows="20" cols="10"> <asp:CheckBox ID="chk_termos" runat="server" Enabled="fal
textarea
,它包含条款和条件,并且可以滚动。当我向下滚动textarea
时,我想启用一个复选框,用户可以选中并继续。问题是它不起作用
<textarea name="terms" runat="server" id="terms" style="resize:none" disabled="disabled" rows="20" cols="10">
<asp:CheckBox ID="chk_termos" runat="server" Enabled="false" AutoPostBack="true"/>
<script type="text/javascript">
$(document).ready(function() {
$("#terms").scroll(function() {
alert("AI O CARALHO")
if ($("#terms").scrollTop() > 10) {
$('#chk_termos').prop('disabled', true);
} else {
$('#chk_termos').prop('disabled', false);
}
});
});
</script>
$(文档).ready(函数(){
$(“#术语”)。滚动(函数(){
警报(“AI O CARALHO”)
如果($(“#术语”).scrollTop()>10){
$('chk_termos').prop('disabled',true);
}否则{
$('chk_termos').prop('disabled',false);
}
});
});
当我甚至滚动以获取
警报(“AI O CARALHO”)
时,它根本不显示,所以我猜该功能根本不起作用。您的代码只在Chrome中起作用。在所有其他浏览器中,禁用
表单元素不会引发滚动
事件,因此您的逻辑永远不会触发
要解决此问题,您可以改为使用只读
,这样用户就无法修改文本区域
的内容,但它仍会根据需要触发滚动
事件:
$(文档).ready(函数(){
$(“#术语”)。滚动(函数(){
$('chk_termos').prop('disabled',$(this.scrollTop()>10);
});
});代码>
同一天,我将成为一名杰出的献身者。同一天,我将成为一名杰出的献身者。同一天,我将成为一名杰出的献身者。同一天,我将成为一名杰出的献身者。同一天,我将成为一名杰出的献身者。同一天,我将成为一名杰出的献身者。同一天,我将成为一名杰出的献身者。同一天,我将成为一名杰出的献身者。同一天,我将成为一名杰出的献身者。同一天,我将成为一名杰出的献身者。
您已将文本区域设置为禁用,这将禁用其中的所有功能
相反,不要使用textarea
,只使用div
元素,因为它们在默认情况下首先是不可编辑的。您还可以在if
分支中反转启用/禁用的命令
$(函数(){
$(“#术语”)。滚动(函数(){
//警报(“AI O CARALHO”)
如果($(“#术语”).scrollTop()>10){
$('chk_termos').removeAttr('disabled');
}否则{
$('chk_termos').attr('disabled','disabled');
}
});
});代码>
#术语{高度:5em;溢出-y:滚动;宽度:25%;边框:1px实心#e0;}
阅读所有内容并滚动至底部
阅读所有内容并滚动至底部
阅读所有内容并滚动至底部
阅读所有内容并滚动至底部
阅读所有内容并滚动至底部
阅读所有内容并滚动至底部
阅读所有内容并滚动至底部
阅读所有内容并滚动至底部
阅读所有内容并滚动至底部
阅读所有内容并滚动至底部
您知道您已将文本区域设置为禁用
,对吗?这确实会影响?嗯,是的。如果它被禁用了,你就不能滚动它。天哪,它受到了影响,我如何防止他们在文本区域上写呢?我用禁用按钮滚动它。这对我来说非常有效,问题是我使用了文本区域,使用这个并格式化它的CSS。这更简单,更简单,谢谢老兄!