javascript - chrome - ActiveXObject no está definido y no puede encontrar la variable: ActiveXObject
activexobject in chrome or firefox (3)
Una aplicación web puede solicitar acceso a un sistema de archivos de espacio aislado llamando a window.requestFileSystem()
. Funciona en cromo.
window.requestFileSystem = window.requestFileSystem || window.webkitRequestFileSystem;
var fs = null;
window.requestFileSystem(window.TEMPORARY, 1024 * 1024, function (filesystem) {
fs = filesystem;
}, errorHandler);
fs.root.getFile(''Hello.txt'', {
create: true
}, null, errorHandler);
function errorHandler(e) {
var msg = '''';
switch (e.code) {
case FileError.QUOTA_EXCEEDED_ERR:
msg = ''QUOTA_EXCEEDED_ERR'';
break;
case FileError.NOT_FOUND_ERR:
msg = ''NOT_FOUND_ERR'';
break;
case FileError.SECURITY_ERR:
msg = ''SECURITY_ERR'';
break;
case FileError.INVALID_MODIFICATION_ERR:
msg = ''INVALID_MODIFICATION_ERR'';
break;
case FileError.INVALID_STATE_ERR:
msg = ''INVALID_STATE_ERR'';
break;
default:
msg = ''Unknown Error'';
break;
};
console.log(''Error: '' + msg);
}
Más información here .
Esta pregunta ya tiene una respuesta aquí:
- ActiveXObject en Firefox o Chrome (¡no IE!) 4 respuestas
Quiero crear un archivo de texto en local. Cuando busco en Google Chrome, haga clic en el botón que muestra un error, como ActiveXObject no está definido, y cuando navego en Safari, haga clic en el botón que muestra un error que no puede encontrar variable: ActiveXObject . Cualquiera puede ayudarme. ¿Cómo puedo lograr y crear un archivo .Thanq?
<script>
function createFile() {
var object = new ActiveXObject("Scripting.FileSystemObject");
var file = object.CreateTextFile("C://Hello.txt", true);
file.WriteLine(''Hello World'');
alert(''Filecreated'');
file.WriteLine(''Hope is a thing with feathers, that perches on the soul.'');
file.Close();
}
</script>
<input type="Button" value="Create File" onClick=''createFile()''>
ActiveXObject
está disponible solo en el navegador IE. Así que cualquier otro agente de usuario lanzará un error.
En el navegador moderno, puede usar la API de archivos o la API de escritura de archivos (implementada actualmente solo en Chrome )
ActiveXObject
no es estándar y solo es compatible con Internet Explorer en Windows.
No existe una forma nativa de navegador cruzado para escribir en el sistema de archivos sin utilizar complementos, incluso el borrador de la API de archivos da acceso de solo lectura.
Si desea trabajar multiplataforma, entonces necesita mirar cosas como los applets de Java firmados (teniendo en cuenta que eso solo funcionará en plataformas para las cuales el tiempo de ejecución de Java está disponible).