横竖版文字转换工具:优化后的代码
优化后的横竖版文字转换工具:修复6个Bug
这是一个优化后的横竖版文字转换工具,修复了6个Bug,包括输入框为空时提示并阻止代码执行、复制按钮复制结果框的内容、获取结果框内容使用正确的方法、使用val方法获取结果框的值、设置临时textarea元素的样式和位置以及清空临时元素等问题。
优化点:
- 点击转换按钮时,如果输入框为空,会弹出提示框并阻止代码执行,避免结果框显示上一次的结果。
- 复制按钮点击时,会复制结果框里的内容,而不是空字符串。
- 复制按钮点击时,会获取结果框的内容,而不是输入框的内容。
- 复制按钮点击时,会使用val方法获取结果框的值,而不是text方法。
- 复制按钮点击时,创建了一个临时的textarea元素,并设置了它的样式和位置,避免页面出现问题。
- 复制按钮点击时,复制完成后会清空临时的textarea元素,避免页面出现问题。
优化后的代码:
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>横竖版文字转换</title>
<style>
.container {
width: 90%;
max-width: 800px;
margin: 0 auto;
text-align: center;
}
h1 {
font-size: 32px;
margin-bottom: 20px;
}
textarea {
width: 100%;
height: 200px;
padding: 10px;
margin-bottom: 20px;
border: 1px solid #ccc;
resize: none;
font-size: 18px;
font-family: '微软雅黑', 'Microsoft Yahei', sans-serif;
line-height: 1.5;
box-sizing: border-box;
}
button {
background-color: #4CAF50;
color: white;
padding: 10px 20px;
border: none;
border-radius: 5px;
font-size: 18px;
cursor: pointer;
}
.result {
width: 100%;
height: 200px;
padding: 10px;
border: 1px solid #ccc;
font-size: 18px;
font-family: '微软雅黑', 'Microsoft Yahei', sans-serif;
line-height: 1.5;
box-sizing: border-box;
}
.copy-btn {
display: inline-block;
background-color: #ccc;
color: #fff;
padding: 5px;
border-radius: 3px;
font-size: 14px;
cursor: pointer;
margin-left: 10px;
}
</style>
<script src="https://code.jquery.com/jquery-3.6.0.min.js"></script>
<script>
$(document).ready(function() {
$('button').click(function() {
var text = $('textarea').val().trim();
if (text !== '') {
var result = '';
for (var i = 0; i < text.length; i++) {
result += text[i] + '
';
}
$('.result').text(result);
} else {
alert('请输入要转换的文字!');
return false; // 阻止代码执行
}
});
$('.copy-btn').click(function() {
var result = $('.result').val();
if (result !== '') {
var temp = $('<textarea>').appendTo('body'); // 将临时元素添加到body中
temp.val(result).select();
document.execCommand('copy');
temp.remove(); // 删除临时元素
alert('已成功复制到剪贴板!');
} else {
alert('请先转换文字!');
}
});
});
</script>
</head>
<body>
<div class="container">
<h1>横竖版文字转换</h1>
<textarea placeholder="请输入要转换的文字"></textarea>
<button>转换</button>
<textarea class="result" placeholder="转换后的文字"></textarea>
<button class="copy-btn">复制</button>
</div>
</body>
</html>
这个优化后的代码能够更加有效地解决用户需求,提高用户体验。
原文地址: https://www.cveoy.top/t/topic/mKNG 著作权归作者所有。请勿转载和采集!