创建HTML输入字段,该字段采用rgb颜色值,可更改javascript中的textarea背景
我已经尝试了数小时来解决我面临的这个问题,我想我理解这个应该如何工作的原则,但我似乎无法找到正确的方法来做这件事,不管我在哪里都努力搜索 我正在设计一个在线文本处理器(类似于MicrosoftWord),我已经添加了除此之外所需的所有内容 我想要一个输入字段,其中将输入rgb颜色值,并且指定的文本区域背景颜色将改变。输入必须在rgb(0到255)范围内。 我在网上尝试过不同的方法,例如:创建HTML输入字段,该字段采用rgb颜色值,可更改javascript中的textarea背景,javascript,html,validation,input,rgb,Javascript,Html,Validation,Input,Rgb,我已经尝试了数小时来解决我面临的这个问题,我想我理解这个应该如何工作的原则,但我似乎无法找到正确的方法来做这件事,不管我在哪里都努力搜索 我正在设计一个在线文本处理器(类似于MicrosoftWord),我已经添加了除此之外所需的所有内容 我想要一个输入字段,其中将输入rgb颜色值,并且指定的文本区域背景颜色将改变。输入必须在rgb(0到255)范围内。 我在网上尝试过不同的方法,例如: <script type="text/javascript"> var a = parseI
<script type="text/javascript">
var a = parseInt(prompt("Enter R"), 10) || 105,
b = parseInt(prompt("Enter G"), 10) || 105,
c = parseInt(prompt("Enter B"), 10) || 105;
document.body.style.backgroundColor= 'rgb(' + a + ',' + b + ',' + c + ')';
</script>
var a=parseInt(提示(“输入R”),10)| | 105,
b=parseInt(提示(“输入G”),10)| | 105,
c=parseInt(提示(“输入B”),10)| | 105;
document.body.style.backgroundColor='rgb('+a+','+b+','+c+');
但没有什么能接近我所需要的注意我玩了这个脚本,还有更多
假设我有一个文本区域:
<textarea id="TextArea" placeholder="Please enter your text here.."</textarea>
我认为您需要将代码放入函数中,以窗口
调用加载
事件:
<script type="text/javascript">
window.onload = function (){
var a = parseInt(prompt("Enter R"), 10) || 105,
b = parseInt(prompt("Enter G"), 10) || 105,
c = parseInt(prompt("Enter B"), 10) || 105;
document.querySelector("#TextArea").style.backgroundColor = "#" + a + b + c;
}
</script>
window.onload=函数(){
var a=parseInt(提示(“输入R”),10)| | 105,
b=parseInt(提示(“输入G”),10)| | 105,
c=parseInt(提示(“输入B”),10)| | 105;
document.querySelector(“#TextArea”).style.backgroundColor=“#”+a+b+c;
}
您需要这样做,因为浏览器将在终止呈现HTML之前执行javascript代码
因此,我们将把您的代码包装在一个函数中,并将其保存在onload
中,以便仅在浏览器完成HTML呈现和资源下载时执行它
要理解窗口.onload
请查看示例中的,您正在设置背景色而不是文本区域背景色:
看看这个例子是否对你有帮助
var a=parseInt(提示(“输入R”),10)| 105,
b=parseInt(提示(“输入G”),10)| | 105,
c=parseInt(提示(“输入B”),10)| | 105;
document.getElementById(“TextArea”).style.backgroundColor='rgb('+a+','+b+','+c+')代码>
`
我终于解决了!这是愚蠢的,但哦,所有的编码错误都是愚蠢的,让我们陷入困境
我不得不更改提示,因此我需要一个文本字段,用户可以在需要时自由输入rgb值,而不是弹出输入窗口。因此,我创建了三个文本字段,并给每个字段分配了一个id,第一个是r,然后是g,然后是b,并将每个字段分配给一个变量document.getElementById(“r”)
最后,我将三个输入文本的结果分配给我希望更改背景颜色的文本区域。至于验证,非常简单的if-else语句可以确保数字等于或低于255和0或更高。文本看起来如何?张贴一个例子!感谢您的来访,我遇到了这些脚本,这与我以前尝试的脚本相同,或者至少足够接近。这将给你一个弹出窗口,询问R,然后是G,然后是B。我试图完成的是一个正常的输入字段,在这里可以输入rgb颜色,文本区域的背景将根据rgb值改变。下面是来自w3chool的一个示例。查看rgb字段,每当您更改值时,div的颜色都会更改。嗯,我想您需要更改所有页面的背景颜色。我将更新答案,只更改TextArea。我认为您需要将所有可执行代码放入函数中,并在窗口中调用它。onload
事件。我会更新代码。谢谢,伙计,你看到这里的问题是提示“输入R”导致弹出窗口。下面是一个我正在寻找的示例:我试图实现的是一个正常的输入字段,在该字段中可以输入rgb颜色,例如rgb(255,0,0),文本区域的背景将根据rgb值改变。下面是来自w3chool的一个示例。