正在处理自定义文件上载应用程序。我有两个主要问题:
对以上问题的任何帮助都将不胜感激。
function perform1Click(node) { alert("INIT"); var evt = document.createEvent("MouseEvents"); evt.initEvent("click", true, false); node.dispatchEvent(evt); alert(3) getFile(evt); } function getFile(event) { var files = event.target.files; var totalSize = 0; if (totalSize > 1024*10) { alert('Total size exceed 1 Mb.'); return; } //alert(files) //alert(files.length); for (var i = 0, f; f = files[i]; i++) { displayFileList(f.name, f.size); totalSize = totalSize+f.size; } } function displayFileList(name, size) { if (name != '') { var top_plugin = document.getElementById('top_plugin'); // create tag var ptag = document.createElement("p"); // create div var divBox = document.createElement("div"); divBox.setAttribute('class', 'divBox'); // create input[type='checkbox'] var inputCheckBox = document.createElement("input"); inputCheckBox.setAttribute('type', 'checkbox'); inputCheckBox.setAttribute('id', 'checkboxClass') // add checkbox to div. divBox.appendChild(inputCheckBox); // create text node for divBox and add it to divBox. var txtNode = document.createTextNode(name); divBox.appendChild(txtNode) var sizeDivBox = document.createElement("p"); sizeDivBox.setAttribute('style', 'clear:both; display: inline-block;'); var txtSizeNode = document.createTextNode(size); sizeDivBox.appendChild(txtSizeNode); divBox.appendChild(sizeDivBox); // add divBox to ptag. ptag.appendChild(divBox); //ptag.appendChild(divTxt); // add ptag to top_plugin div. top_plugin.appendChild(ptag); } // if file value is not null, make it blank. if (name != '') { name = ''; } }
我找到了解决同样问题的方法。请在下面找到新代码。
function uploadDFiles() {
var file = document.getElementById('_file');
file.click();
try {
file.addEventListener("change", getFileName);
}
catch (e) {
file.attachEvent("onclick", getFileNameOnIE);
alert("Error:: "+e.description);
}
}
function getFileName(event) {
var files = event.target.files;
for (var i = 0, f; f = files[i]; i++) {
var fileName = f.name;
var fileSize = f.size;
var fSize = bytesToSize(fileSize, 2);
displayFileList(fileName, fSize);
}
}
但现在我有了新问题。这段代码在IE中不起作用。对于IE我使用的是attachEvent方法,但它不起作用。请找到下面的代码:
function getFileNameOnIE(event) {
alert(event.type);
var files = event.target;
alert(files.length);
for (var i = 0, f; f = files[i]; i++) {
displayFileList(f.name, f.size);
}
}
现在有人能给我提供同样的解决方案吗?
--
Tks巴拉特
您可以从http://jsbin.com/husamupi/1/edit试用代码
问题内容: 我在框的选项标签中使用事件 事件在IE和Chrome上不起作用,但在Firefox中工作正常,在这里我不想在选择标签bcz上使用事件,如果用户再次选择相同的选项,则不会触发事件 例如:假设第一次用户选择“一个”下拉菜单,我将在处理了一些用户关闭的弹出窗口后打开一个弹出窗口,假设如果用户希望选择相同的“一个”下拉菜单,则不会触发任何事件。可以使用onclick事件解决在选项标签上,但不适
问题内容: 以下代码可在Google Chrome beta和IE 7中运行。但是,Firefox似乎对此有问题。我怀疑这是我的CSS文件如何包含的问题,因为我知道Firefox对跨域导入不太友好。 但这仅仅是静态HTML,而没有跨域问题。 在我的landing-page.html上,我像这样进行CSS导入: 在main.css中,我还有另一个导入,例如: 在type.css中,我有以下声明: 我
在本章中,我们将详细介绍鼠标事件及其属性。 请注意:此类事件不仅可能来自于“鼠标设备”,还可能来自于对此类操作进行了模拟以实现兼容性的其他设备,例如手机和平板电脑。 鼠标事件类型 我们已经见过了其中一些事件: mousedown/mouseup 在元素上点击/释放鼠标按钮。 mouseover/mouseout 鼠标指针从一个元素上移入/移出。 mousemove 鼠标在元素上的每个移动都会触发此
鼠标事件的种类 鼠标事件指与鼠标相关的事件,继承了MouseEvent接口。具体的事件主要有以下一些。 click:按下鼠标(通常是按下主按钮)时触发。 dblclick:在同一个元素上双击鼠标时触发。 mousedown:按下鼠标键时触发。 mouseup:释放按下的鼠标键时触发。 mousemove:当鼠标在一个节点内部移动时触发。当鼠标持续移动时,该事件会连续触发。为了避免性能问题,建议对该
我正在尝试接收JavaFX 2.2中一个不可见节点的MouseEvents。可以把它想象成一个互动但不可见的区域,比如当鼠标悬停在它上面时,它会触发一个动作。问题是,这不是一个静态定义的区域,但有多个区域(很多)可以被应用程序移动和调整大小。所以对于我的用例来说,全局监听鼠标移动并手动检测鼠标移动事件会有很大的开销。 目前,我正在试验一个透明矩形(),但实际/最终的应用程序将使用某种窗格,因为它实