我正在修改我们在工作中使用的页面。该页面是一个本地 html 页面,其大部分功能使用 js 文件。我已经能够解决一些问题并使其在 Chrome 中运行(之前它只能在 IE 中运行良好)。但现在我尝试使用一些按钮或输入更改文本的背景和颜色。
这纯粹是为了美观,不需要解决,我只是想知道我做错了什么,这样我就可以让 future 的项目变得更好。使用文件输入类型的变化背景工作得很好。现在我只是尝试使用输入类型颜色来更改整个文档(包括元素,但我还没有在代码中实现)中的文本颜色。我尝试设置一个事件监听器,就像我用于背景图像一样,但它不起作用。我可能完全做错了什么。
这是 html 部分的代码...
<html lang="en">
<head>
<meta http-equiv="x-ua-compatible" content="IE=Edge"/>
<title>
CADI - Life
</title>
<style>
</style>
</head>
<body background="https://is5-ssl.mzstatic.com/image/thumb/Purple111/v4/11/4c/0e/114c0e6a-eb12-8158-a1c7-64632cfd6a3f/source/512x512bb.jpg" text="white" onclick="changeTabs()" onload="init()">
Choose your Background!<br>
<input type='file' id='getval' name="background-image" />
<input type="color" id="textColor" name="favcolor" value="#FFFFFF">
这是 JavaScript...
document.getElementById('getval').addEventListener('change', readURL, true);
function readURL(){
var file = document.getElementById("getval").files[0];
var reader = new FileReader();
reader.onloadend = function(){
document.body.style.background = "url(" + reader.result + ") black no-repeat center";
}
if(file){
reader.readAsDataURL(file);
}else{
}
}
document.getElementById('textColor').addEventListener('change', changeText, true);
function changeText(){
var color = document.getElementById("textColor").value
var looker = new ColorLooker();
looker.onloadend = function(){
document.body.style.text = "looker.result";
}
if(color){
looker.color
}else{
}
}
当我在颜色输入上选择颜色时,我希望颜色会发生变化。当我选择颜色时,没有任何反应,控制台告诉我 ColorLooker 未定义。
最佳答案
**尝试替换这个**
由于您需要更改文档上的文本颜色,因此必须使用 body.color css 格式。
https://www.w3schools.com/css/css_text.asp
document.getElementById('textColor').addEventListener('change', changeText, true);
function changeText(){
var color = document.getElementById("textColor").value
document.body.style.color = color;
}
关于javascript - 如何使用按钮更改文本颜色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57433321/