在Phonegap中本地文件引用错误
Reference Error With Local Files In Phonegap
我似乎有问题,使用本地文件与我的phonegap应用程序。我试图得到一个简单的应用程序,并运行扫描二维码,只是显示被扫描的文本。然而,由于某种原因,它不起作用。我可以运行任何JavaScript,只要它在index.html文件中。由于某种原因,每当我尝试从包含的js文件中调用函数时,我都会得到一个引用错误。在此代码中,我得到'ReferenceError: scan_qr_code未定义'和'ReferenceError: onDeviceReady未定义'。这两个函数都来自main.js文件,该文件应该包含在index.html文件中。我下载并检查了apk文件,这些文件被包含在构建中,但由于某种原因不能工作。有人有什么建议吗?我快疯了。看起来这应该是一件相当直截了当的事情。此外,我正在构建的PhoneGap版本为3.7.0
我正在使用PhoneGap构建进行编译,我的文件夹结构设置如下。
/www
/scripts
main.js
jquery-1.11.3.min.js
/styles
main.css
index.html
config.xml
index . html
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<script type="text/javascript" src="scripts/jquery-1.11.3.min.js"></script>
<script type="text/javascript" src="scripts/main.js"></script>
<script type="text/javascript" src="cordova.js"></script>
<script type="text/javascript" src="childbrowser.js"></script>
<script type="text/javascript" src="scripts/barcode.js"></script>
<link href="styles/main.css" rel="stylesheet" />
<title> </title>
<script>
$(function(){
alert('here');
try{
$("#scan_button").click(function(){
alert('Button Clicked 2');
try{
onDeviceReady();
scan_qr_code();
}catch(e){
alert(e);
}
});
}catch(e){
alert(e);
}
});
document.addEventListener("deviceready", function(){
try{
$("#scan_button").click(function(){
alert('Button Clicked');
try{
scan_qr_code();
}catch(e){
alert(e);
}
});
scan_qr_code();
}catch(e){
alert(e);
}
}, false);
</script>
</head>
<body>
<button id="scan_button">Scan QR Code</button>
</body>
</html>
main.js
$(function(){
});
function onDeviceReady(){
alert('Device Ready Fired');
}
function scan_qr_code(){
try{
alert('Scanning');
// Scan the QR code
barcode_app.scan(function(result){
code = result.text;
// Just grab the text from the scanned code
alert(code);
scan_qr_code(){
});
}catch(e){
alert(e);
}
}
config . xml
<preference name="phonegap-version" value="3.7.0" />
<access origin="*"/>
这将是一个非常大胆的猜测,但看起来你的main.js文件有一个额外的{
,不应该在那里。
scan_qr_code(){
这可能会破坏你的代码,这就是为什么你在main.js中的函数是未定义的。
这是一个柱塞,显示代码将运行良好,如果你删除额外的{
。嗯…barcode_app
现在显示为未定义,我认为它是scripts/barcode.js
文件的一部分,顺便说一下,不包括在您的项目结构中。
相关文章:
- ng-view 中的脚本在从文件引用时不起作用(JQuery 在角度之前加载)
- Javascript没有输入带有.php文件引用的函数
- MRAID文件引用
- 如何仅将js文件引用到特定的脚本块
- 如何在没有元素的情况下获取文件引用对象
- 尽管 js 文件引用在标头中,但未定义函数
- 文件引用从 js 浏览,模拟闪存中的按键解决方法
- 如何从外部 js 文件引用 id
- Javascript-外部库/文件引用
- 如何在asp.net中将javascript文件引用为UserControl
- 从extJavaScript文件引用PHP
- 如何从node_modules到html文件引用lodash 3.10.1
- 使用外部js文件引用td标记
- js文件引用末尾的花括号是什么意思
- 通过grunt任务更新json文件中的文件引用
- 如何在自定义控件中添加.js文件引用
- 从另一个HTML文件引用元素id
- requireJS优化器能用MD5校验和更新静态文件引用和名称吗?
- 在Phonegap中本地文件引用错误
- Ng-grid不能与文件引用的单元格模板一起工作