现在,我正在为我的学习开展多媒体项目。任务是创建一个众筹平台。我的问题是“创建项目”页面上的本地预览图像。我使用论坛搜索并遇到了这个:
http://www.xul.fr/en/html5/filereader.php
我复制了代码并将其放入我的HTML / JS文件中:
到目前为止,这是我的HTML代码:
<div class="header">
ICH BIN DER HEADER, HIER KOMMT HEAD-KRAM REIN
</div> <!-- HEADER GESCHLOSSEN -->
<!-- -------------------------1------------------------------- -->
<div class="slideshow">
<div id="titelbild">
<input type="file" id="getimage">
<fieldset><legend>Your image here</legend>
<div id="imgstore"></div>
</fieldset>
</div> <!-- TITELBILD GESCHLOSSEN -->
<div id="projektinfos">
<input type="text" id="titel" maxlength="60" value="Titel" onFocus="if(this.value=='Titel') this.value='';" onBlur="if(this.value=='')this.value='Titel';">
<select id="rewardfarbe">
<option selected>Kategorie wählen </option>
<option>Rot </option>
<option>Grün </option>
<option>Blau </option>
</select>
<input type="text" class="textbox" maxlength="60" value="Betrag" onFocus="if(this.value=='Betrag') this.value='';" onBlur="if(this.value=='')this.value='Betrag';">
<input type="text" class="textbox" maxlength="60" value="Ort" onFocus="if(this.value=='Ort') this.value='';" onBlur="if(this.value=='')this.value='Ort';">
</div> <!-- PROJEKTINFOS GESCHLOSSEN -->
</div> <!-- SLIDESHOW GESCHLOSSEN -->
<!-- -------------------------2------------------------------- -->
<div id="details">
</div>
<!-- -------------------------3------------------------------- -->
<div class="footer">
</div>
我的JavaScript代码:
<script>
function imageHandler(e2)
{
var store = document.getElementById('imgstore');
store.innerHTML='<img src="' + e2.target.result +'">';
}
function loadimage(e1)
{
var filename = e1.target.files[0];
var fr = new FileReader();
fr.onload = imageHandler;
fr.readAsDataURL(filename);
}
window.onload=function()
{
var x = document.getElementById("filebrowsed");
x.addEventListener('change', readfile, false);
var y = document.getElementById("getimage");
y.addEventListener('change', loadimage, false);
}
</script>
我的CSS代码:
.body {
width: 1280px;
height: 2000px;
background-image:url(images/fabric_patterns_2_source_SMALL.jpg);
}
/* -------------------------0------------------------------- */
.header {
margin: auto;
width: 900px;
height: 80px;
background-color:#FFBD91;
}
/* -------------------------1------------------------------- */
.slideshow {
margin: auto;
width: 1024px;
height: 300px;
background-color: #ACB6FF;
}
#titelbild {
float: left;
width: 400px;
height: 300px;
background-image:url(images/bildhinzufuegen.gif);
}
#titelbildhinzufuegen {
width: 400px;
height: 300px;
opacity: 0;
}
#projektinfos {
float: right;
width: 624px;
height: 300px;
background-color:#B6FF98;
}
/* -------------------------2------------------------------- */
#details {
margin: auto;
width: 900px;
height: 1500px;
background-color: #C0E3FF;
}
#titel {
font-family: Helvetica,Verdana,Arial,sans-serif;
font-size: 18px;
margin-left: 112px;
margin-top: 20px;
width: 400px;
height: 50px;
}
#rewardfarbe {
width: 200px;
height: 50px;
margin-top: 20px;
margin-left: 312px;
}
.textbox {
font-family: Helvetica,Verdana,Arial,sans-serif;
font-size: 18px;
margin-left: 312px;
margin-top: 20px;
width: 200px;
height: 50px;
}
/* -------------------------3------------------------------- */
.footer {
margin: auto;
width: 900px;
height: 80px;
background-color: #B0BAFF;
}
就像我说的那样,我在帖子开头的链接中复制了代码,但它不起作用......我不明白。是否有可能,这必须在真正的服务器上运行,因为现在,我正在使用XAMPP测试我的所有工作。
答案 0 :(得分:1)
您的代码不完整,因此无法使用。这不是一个小问题。您可以在this HTML5rocks page中找到有关您尝试执行的操作的详细文档。实际上代码非常相似。
另外,您可以在另一个类似问题中查看this nice replay。它有一个工作的例子。