我有一个分配给元素(输入)的功能。它可以工作,但是一旦应用我就不能禁用它
function applyCustomfunc() {
$('#element').customFunction();
}
我需要编写另一个函数,该函数将在onclick时触发,并将禁用第一个函数
function disableCustomfunc () {
/// Do something
}
答案 0 :(得分:1)
您始终可以使用css pointerEvents
属性来禁用或启用任何元素的点击,请参见演示
$("#click-element").on('click', function(e) {
e.preventDefault();
alert("clicked");
});
$("#disable").on('click', function() {
$("#click-element").css({
pointerEvents: 'none'
});
})
$("#enable").on('click', function() {
$("#click-element").css({
pointerEvents: 'auto'
});
})
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<link rel="stylesheet" href="https://use.fontawesome.com/releases/v5.1.0/css/all.css" integrity="sha384-lKuwvrZot6UHsBSfcMvOkWwlCMgc0TaWr+30HWe3a4ltaBwTZhyTEggF5tJv8tbt" crossorigin="anonymous">
<a href="#." id="click-element">Click it <i class="fa fa-link"></i></a>
<div>
<input type="button" value="Disable Now" id="disable">
<input type="button" value="Enable Now" id="enable">
</div>
对于您的情况,您可以像
一样使用它要禁用customFunction
function disableCustomfunc () {
$("#element").css({pointerEvents:'none'});
}
使用
重新启用 function enableCustomfunc () {
$("#element").css({pointerEvents:'auto'});
}