Javascript 通过phonegap加载相机或多媒体资料

Javascript 通过phonegap加载相机或多媒体资料,javascript,cordova,Javascript,Cordova,我有一个区域,我想要两个按钮,要么加载相机,上传图片,要么加载画廊,然后上传图片。这是一个phonegap应用程序 这项工作: HTML: 但是,这两个按钮都不会加载任何内容: HTML: 以下是phonegap上媒体示例的链接: 它来自phonegap员工: 您的软件包中可能没有包含cordova.js。。。这就是它不起作用的原因 <a href="#" onclick="takep()"><img src="icons/camera-icon.png" /></

我有一个区域,我想要两个按钮,要么加载相机,上传图片,要么加载画廊,然后上传图片。这是一个phonegap应用程序

这项工作: HTML:

但是,这两个按钮都不会加载任何内容:

HTML:


以下是phonegap上媒体示例的链接:

它来自phonegap员工:

您的软件包中可能没有包含cordova.js。。。这就是它不起作用的原因

<a href="#" onclick="takep()"><img src="icons/camera-icon.png" /></a>
function takep(SessionKey, PetID) {
    // Retrieve image file location from specified source
    navigator.camera.getPicture(
        uploadPhoto,
        function(message) { alert('get picture failed'); },
        {
            quality         : 50,
            destinationType : navigator.camera.DestinationType.FILE_URI,
            sourceType      : navigator.camera.PictureSourceType.PHOTOLIBRARY
        }
    );
}

function uploadPhoto(imageURI) {
    $.mobile.loading( 'show', { theme: "b", text: "Loading", textonly: false})
    var options = new FileUploadOptions();
    options.fileKey="file";
    options.fileName=imageURI.substr(imageURI.lastIndexOf('/')+1);
    options.mimeType="image/jpeg";


    var params = {};
    var Username = localStorage.getItem("Username");
    var SessionKey = localStorage.getItem("SessionID");
    var PetID =  localStorage.getItem("addPetID");
    var callback = "moo0";

    params.Username = Username;
    params.SessionKey = SessionKey;
    params.AnimalKey = PetID;
    params.Filename = "moo";
    params.callback = callback;
    console.log(Username);
    console.log(SessionKey);
    console.log(PetID);



    options.params = params;

    var ft = new FileTransfer();
    ft.upload(imageURI, encodeURI("http://redacted/UploadFileCollection"), win, fail, options);

}
<a href="#" onclick="capturePhotoWithData()" class="ui-btn ui-btn-inline">From Camera</a>
        <a href="#" onclick="capturePhotoWithFile()"  class="ui-btn ui-btn-inline ui-btn-b">From File</a>
function capturePhotoWithData() {
    // Take picture using device camera and retrieve image as base64-encoded string
    navigator.camera.getPicture(uploadPhoto, onFail, { quality: 50 });
}

function capturePhotoWithFile() {
    navigator.camera.getPicture(uploadPhoto, onFail, { quality: 50, destinationType: Camera.DestinationType.FILE_URI, sourceType: navigator.camera.PictureSourceType.PHOTOLIBRARY });
}