Javascript 用图像选择替换单击时的图像
我已经建立了一个带有基本标题的小模板。我试图做一些类似于拖放网站建设,但在这种情况下,布局将是相同的,只是内容的变化 正如我所说,我已经创建了一个header元素并给它一个背景图像Javascript 用图像选择替换单击时的图像,javascript,jquery,html,image,Javascript,Jquery,Html,Image,我已经建立了一个带有基本标题的小模板。我试图做一些类似于拖放网站建设,但在这种情况下,布局将是相同的,只是内容的变化 正如我所说,我已经创建了一个header元素并给它一个背景图像 header { width: 100%; height: 200px; background: url(https://pearsonified.com/theme/neoclassical/wp-content/themes/neoclassical/headers/header_2.jpg) cen
header {
width: 100%;
height: 200px;
background: url(https://pearsonified.com/theme/neoclassical/wp-content/themes/neoclassical/headers/header_2.jpg) center center no-repeat;
background-size: cover;
}
要让图像在单击时更改,我可以执行以下操作
$(function() {
$('#header').click(function() {
$(this).css('background', 'url(https://pearsonified.com/theme/neoclassical/wp-content/themes/neoclassical/headers/header_1.jpg)');
});
});
我树立了一个榜样。虽然这与我想做的类似,但我希望允许用户从计算机上选择图像,而不是更改为硬编码图像。所以有点像一个图像上传选择选项,但在这种情况下,我不上传任何东西。我的目标是在完成时有一个保存按钮,它将生成这些更新的HTML/CSS文件
所以我想知道我该如何允许用户选择他们想要用什么图像替换默认图像
谢谢你想做的事很棘手。这里有一个可能的解决方案 如中所述,您可以让客户端“上传”其图像,以便在Javascript中进行操作: 我假设
reader.result
包含数据:base64;图像/(键入),
开头的东西,但你必须自己试验一下
以下是一些阅读材料:
- (例如,FileReader正在工作,可能很有用)
- 你想做的事情很棘手。这里有一个可能的解决方案
如中所述,您可以让客户端“上传”其图像,以便在Javascript中进行操作:
我假设
reader.result
包含数据:base64;图像/(键入),
开头的东西,但你必须自己试验一下
以下是一些阅读材料:
- (例如,FileReader正在工作,可能很有用)
function readURL(input) {
if (input.files && input.files[0]) {
var reader = new FileReader();
reader.onload = function (e) {
document.getElementById('blah').src = e.target.result;
}
reader.readAsDataURL(input.files[0]);
}
}
And the HTML:
<input type='file' id="imgInp" onchange="readURL(this);" />
<img id="blah" src="#" alt="your image" />
background:url(data:base64;image/jpg,IMAGINE_BASE64_JIBBERISH_HERE)