将change、mouseup、mousedown、mouseout、keyup和keydown合二为一 [英] Combining change, mouseup, mousedown, mouseout, keyup and keydown into the one function
本文介绍了将change、mouseup、mousedown、mouseout、keyup和keydown合二为一的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
- 我有一个文本框,它假定在相应的选择框中选择的任何选项的值.
- 我正在为 on change、mouseup、mousedown、mouseout、keyup 和 keydown 事件重复完全相同的函数
我需要什么:
能否将上述功能合二为一以产生更高效的代码?只是看起来非常重复.
What I need:
Can the aforesaid functions be combined into one to produce more efficient code? It just seems terribly repetitious.
JSFiddle:http://jsfiddle.net/clarusdignus/843YW/1/
HTML:
<label>Industry:</label>
<select name="industry">
<option selected="selected"></option>
<option value="ag">Agriculture</option>
<option value="co">Corporate</option>
</select>
<input type="text" disabled="disabled" name="industryspecifier"/>
jQuery:
$('select[name=industry]').on('change', function() {
$('[name=industryspecifier]').val($(':selected',this).val());
});
$('select[name=industry]').on('mouseup', function() {
$('[name=industryspecifier]').val($(':selected',this).val());
});
$('select[name=industry]').on('mousedown', function() {
$('[name=industryspecifier]').val($(':selected',this).val());
});
$('select[name=industry]').on('mouseout', function() {
$('[name=industryspecifier]').val($(':selected',this).val());
});
$('select[name=industry]').on('keydown', function() {
$('[name=industryspecifier]').val($(':selected',this).val());
});
$('select[name=industry]').on('keyup', function() {
$('[name=industryspecifier]').val($(':selected',this).val());
});
推荐答案
只需将它们与空格组合即可:
Just combine them with spaces:
$('select[name=industry]').on('change mouseup mousedown mouseout keydown', function() {
$('[name=industryspecifier]').val($(':selected',this).val());
});
作为 .on() 的 文档 状态:
As the docs for .on() state:
events Type: String 一个或多个空格分隔的事件类型和可选的命名空间,例如click"或keydown.myPlugin".
events Type: String One or more space-separated event types and optional namespaces, such as "click" or "keydown.myPlugin".
这篇关于将change、mouseup、mousedown、mouseout、keyup和keydown合二为一的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文