0

我正在使用 PhoneGap 开发一个安卓应用程序。在index.html中,我加载了一个这样的 js 文件:

索引.html

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<link rel="stylesheet" href="styles/style.css" />
<link rel="stylesheet" href="styles/loading.css" />
<script src="scripts/jquery-1.7.2.min.js"></script>
<script type="text/javascript" src="scripts/cordova-2.5.0.js"></script>
<script type="text/javascript" src="scripts/readImages.js"></script>

<script type="text/javascript">
    function onReadImage(event) {
        //do something
    }
    document.addEventListener("onReadImage", onReadImage, false);
</script>
</head>
<body>
<!--
  .....
-->
</body>
</html>

readImages.js

// Some codes

window.readImageEvent= document.createEvent("readImageEvent"); // line 4
readImageEvent.initEvent("onWeddingCakesRead", true, true); 

//Some functions

readImageEvent.images = data;
document.dispatchEvent(readImageEvent);

但是当我检查 LogCat 时,我看到了这个错误:

未捕获的错误:NOT_SUPPORTED_ERR:文件中的 DOM 异常 9:///android_asset/www/scripts/readImages.js:4

有任何想法吗?

4

2 回答 2

1

最后我发现了问题。

我更改了以下代码:

window.readImageEvent= document.createEvent("readImageEvent");

至:

window.readImageEvent= document.createEvent("Event");

因为“readImageEvent”不是正确的事件类型。这个链接对于这个问题可能非常有用。

于 2013-04-17T21:45:42.860 回答
0

根据developer.mozilla.org

createEvent 方法已弃用。

我想,你可以尝试这样的事情:

var readImageEvent = new CustomEvent(
    "onReadImage",
    {
        detail: {
            images: data
        },
        bubbles: true,
        cancelable: true
    }
);
document.dispatchEvent(readImageEvent);

有关使用、兼容性等的更多信息可以在这里找到

于 2013-04-17T20:45:55.627 回答