首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何将值存储在可验证的值中,并获取更改函数的值?

如何将值存储在可验证的值中,并获取更改函数的值?
EN

Stack Overflow用户
提问于 2020-02-11 14:14:05
回答 1查看 73关注 0票数 1

我有一个存储不同值的变量列表,我使用这些变量来检查多个更改函数,目前,每当我想检查更改时,我都必须声明这个变量。如何声明它们一次,然后在多个更改函数上访问它们的值。

代码语言:javascript
复制
jQuery('#fontWeight').on('change', function() {
	var getFontweight = jQuery('#fontWeight').val();
	jQuery(".preview").css('font-weight', getFontweight);
});
jQuery('#fontTransform').on('change', function() {
	var getFonttransform = jQuery('#fontTransform').val();
	jQuery(".preview").css('text-transform', getFonttransform);
});
jQuery('#fontWeight, #fontTransform').on('change', function() {
	var getFontweight = jQuery('#fontWeight').val();
	var getFonttransform = jQuery('#fontTransform').val();
	document.getElementById('g-code').innerHTML =
        '#text{\n'+
		'    font-weight: '+getFontweight+';\n'+
		'    text-transform: '+getFonttransform+';\n'+
        '}';
});
代码语言:javascript
复制
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<select class="font-weight" id="fontWeight">
  <option value="normal">Normal</option>
  <option value="bold">Bold</option>
</select>
<select class="font-transform" id="fontTransform">
  <option value="none">Normal</option>
  <option value="uppercase">Uppercase</option>
  <option value="lowercase">Lowercase</option>
</select>
<div class="preview">Grumpy wizards make toxic brew for the evil Queen and Jack. </div>
<textarea id="g-code" onFocus="this.select()" onClick="this.focus();this.select()" readonly='readonly'></textarea>

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-02-11 14:17:37

这个问题是没有意义的,因为您不需要多个change事件处理程序。把它们结合在一起:

代码语言:javascript
复制
jQuery(function($) {
  $('#fontWeight, #fontTransform').on('change', function() {
    var fontWeight = $('#fontWeight').val();
    var fontTransform = $('#fontTransform').val();

    $(".preview").css({
      'font-weight': fontWeight,
      'text-transform': fontTransform
    });

    $('#g-code').html(`#text {\n  font-weight: ${fontWeight};\n  text-transform: ${fontTransform};\n}`);
  }).trigger('change');
  
  $('#g-code').on('focus click', e => e.target.select()); 
});
代码语言:javascript
复制
textarea {
  width: 400px;
  height: 100px;
}
代码语言:javascript
复制
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<select class="font-weight" id="fontWeight">
  <option value="normal">Normal</option>
  <option value="bold">Bold</option>
</select>
<select class="font-transform" id="fontTransform">
  <option value="none">Normal</option>
  <option value="uppercase">Uppercase</option>
  <option value="lowercase">Lowercase</option>
</select>

<div class="preview">Grumpy wizards make toxic brew for the evil Queen and Jack. </div>
<textarea id="g-code" readonly="true"></textarea>

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/60170839

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档