inputLocalFont.addEventListener不是一个函数
inputLocalFont.addEventListener is not a function
我用php和js做了一个添加图像的代码,但是我在js上有错误,它说
inputLocalFont。addEventListener不是一个函数
这是我的代码:
<div>
<img src="<?php echo $img_path.'/'.$img_name ?>" width="400px" height="400px"/>
<ul class="add_img_ul">
<li class="subimg"><input type="file" class="file" name="file"/><img id="add" src="icons/add.jpg" width="80px" height="80px"/></li>
</ul>
<script>
var inputLocalFont = document.getElementsByClassName("file");
inputLocalFont.addEventListener("change",previewImages,false);
function previewImages(){
var fileList = this.files;
var anyWindow = window.URL || window.webkitURL;
for(var i = 0; i < fileList.length; i++){
var objectUrl = anyWindow.createObjectURL(fileList[i]);
$('.add_img_ul').append('<input type="file" class="file" name="file"/><img src="' + objectUrl + '" width="80px" height="80px"/>');
window.URL.revokeObjectURL(fileList[i]);
}
}
</script>
</div>
getElementsByClassName
,顾名思义,返回元素的集合,而不仅仅是一个元素。如果你想从集合中取出第一个元素,用索引0 ([0]
)索引它。
var inputLocalFont = document.getElementsByClassName("file");
inputLocalFont[0].addEventListener("change",previewImages,false);
// -----------^^^
但是如果你真的只是想要第一个,没有理由得到一个列表:querySelector
将给你任何CSS选择器的第一个匹配:
var inputLocalFont = document.querySelector(".file");
inputLocalFont.addEventListener("change",previewImages,false);
…它的优点是它可以在IE8(和所有现代浏览器)上工作,而getElementsByClassName
不能在IE8上工作。如果你需要一个列表,querySelectorAll
也是可用的。
相关文章:
- 我可以在json对象中添加一个函数吗
- 如何在JQuery函数中定义一个值,然后调用另一个函数并使用该值
- 是否可以将一个函数输入连接到另一个函数调用的文本
- 在另一个函数中使用变量this
- 在另一个函数成功结束后调用该函数
- mongoose.connect undefined不是一个函数
- 监听器必须是一个函数
- 使用JS函数来使用另一个函数的语法?node.js
- 如何取消object.prototypes javascript的一个函数
- 从Chrome扩展名中的popup.html文件在background.js文件中运行一个函数
- 嵌套到另一个函数中的Fancybox函数;不起作用
- 如何在javascript中使用不止一个函数
- jQuery-在页面加载时执行一个函数
- jquery UI draggable:UI.children不是一个函数
- jQuery Mobile Undefined不是一个函数
- 如何在php中创建一个函数,该函数与文本区域一起工作,通过输入类似[color:red]的内容来打印具有等效颜色的文本
- javascript函数将数据添加到屏幕,但随后被另一个函数覆盖
- JS异常:animate不是一个函数
- 如何将一个函数附加到一个不存在的元素上
- JavaScript/jQuery-添加添加和删除类与下一个函数之间的延迟