javascript - 使用 JavaScript 和 HTML5 预览图像

标签 javascript html css filereader

现在,我正在为我的研究做一个多媒体元素。任务是创建一个众筹平台。我的问题是“创建元素”页面上的本地预览图像。我使用论坛搜索并遇到了这个:

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 测试我的所有工作。

最佳答案

您的代码不完整,因此无法运行。这不是 jsfiddle 问题。您可以在 this HTML5rocks page 中找到有关您尝试执行的操作的良好文档。 .实际上代码非常相似。

你也可以看看this nice replay在另一个类似的问题中。它有一个工作示例。

关于javascript - 使用 JavaScript 和 HTML5 预览图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12965623/

相关文章:

javascript - 如何有选择地将中间件(multer)插入到新的 Express 路由器中

html - 解码 gzip Chrome 缓存

html - 以桌面为中心但不以移动设备为中心的弹出表单

HTML-CSS 设计问题

javascript - 基于 UL/LI 的长 CSS 菜单的解决方案

JavaScript onclick 事件在移动设备上不起作用

javascript - createDataChannel中label的作用是什么,如何正确使用?

javascript - ng-switch 不自动更新

jquery - 使用 jQuery 更改文本区域 Spotfire 的背景颜色

html - 悬停不使用 Font Awesome 图标