此代码基本上采用“textmoney”并计算出一个人一年的收入。要执行此功能,您必须按Enter键。我还有一个名为'moneydiv'的div,它将执行相同的功能,但似乎我在同一个脚本中都有两个功能都不会起作用。我将如何编写代码以使用户能够同时执行这两项功能?我如何用div编码click()?
Jquery的:
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.3/jquery.min.js"></script>
<script>
$(document).ready(function() {
var $demo = $('#demo');
var $textMoney = $('#textmoney');
var $moneydiv = $('#moneydiv');
.keydown(function(e) {
if (e.keyCode === 13) {
var money = $(this).val();
if (isNaN(money) || money === '') {
$demo.text('You aint enter no $$$$$$');
}
else {
var dailyE = $(this).val() / 365;
$demo.text('$' + dailyE + ' per day');
}
}
else if ($(this).val() === '') {
$demo.text('');
}
}).mouseover(function() {
$(this).css('border', '1px solid black');
}).mouseout(function() {
$(this).css('border', '1px solid grey');
});
});
</script>
答案 0 :(得分:1)
答案 1 :(得分:0)
如果moneydiv和textmoney需要执行相同的功能。然后我建议你这样做。
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.3/jquery.min.js"></script>
<script>
$(document).ready(function() {
var $demo = $('#demo');
var $textMoney = $('#textmoney');
var $moneydiv = $('#moneydiv');
function todo(){
var money = $textMoney.val();
if (isNaN(money) || money === '') {
$demo.text('You aint enter no $$$$$$');
} else {
var dailyE = $textMoney.val() / 365;
$demo.text('$' + dailyE + ' per day');
}
}
// on enter key
$textMoney.keydown(function(e) {
if (e.which === 13) {
todo();
} else if ($(this).val() === '') {
$demo.text('');
}
}).mouseover(function() {
$(this).css('border', '1px solid black');
}).mouseout(function() {
$(this).css('border', '1px solid grey');
});
// on click
$moneydiv.click(function(){
todo();
});
});
</script>
希望它有所帮助。
答案 2 :(得分:0)
我想你要发布&#34; textmoney&#34;的新闻事件。当你点击&#34; moneydiv&#34;你可以这样做。
$('#textmoney').keydown(function(e) {
if (e.keyCode === 13) {
var money = $(this).val();
if (isNaN(money) || money === '') {
$demo.text('You aint enter no $$$$$$');
} else {
var dailyE = $(this).val() / 365;
$demo.text('$' + dailyE + ' per day');
}
} else if ($(this).val() === '') {
$demo.text('');
}
}).mouseover(function() {
$(this).css('border', '1px solid black');
}).mouseout(function() {
$(this).css('border', '1px solid grey');
});
var keyPressEvent = $.Event('keypress');
keyPressEvent.keyCode = 13;
$('#moneydiv').trigger(keyPressEvent);
然而,另一个简单的实现是您可以将逻辑提取到函数中并将函数绑定到click和keypress事件。
希望能帮到你!