chrome扩展清单v2:未加载jquery

时间:2013-12-19 06:29:44

标签: jquery json google-chrome

我正在制作一个chrome扩展程序,将跨域POST请求发送到我的服务器。基本上我可以右键单击图像并可以选择将图像URL发送到 我的服务器通过json。

文件:

manifest.json
background.html
callback.js
jquey.min.js
icon48.png

以下是来源:

的manifest.json

{
  "name": "POST image",
  "description": "Post image to my server",
  "version": "0.1",
  "permissions": [ "contextMenus", "tabs", "http://example.org/*" ],
  "background": { "page": "background.html" },
  "browser_action": { "default_icon": "icon48.png", "default_title": "POST image" },
  "manifest_version": 2
}

background.html

<script type="text/javascript" src="jquery.min.js"></script>
<script type="text/javascript" src="callback.js"></script>

callback.js

function sendnow(imgurl) {
    var imageurl = imgurl.srcUrl;
    var resultDiv = $("#resultDivContainer");
        $.ajax({
        url: "http://example.org/images.php?action=add&jsoncallback=?",
        type: "POST",
        data: { post_key: "7xdnu3", post_data: imageurl },
        dataType: "json",
        success: function (result) {
            switch (result) {
                case true:
                    processResponse(result);
                    break;
                default:
                    resultDiv.html(result);
            }
        },
        error: function (xhr, ajaxOptions, thrownError) {
        alert("failed.");
        }
    });
alert('Image "'+imageurl+'" sent');
};

chrome.contextMenus.create({title: "Send to my server", contexts:["image"], onclick: sendnow});

我猜callback.js按预期运行,因为我能够右键单击图像并看到“发送到我的服务器”选项。我按预期获得了警报提示,但数据未正确发送,因为我在服务器上看不到它。

更新:服务器端的一切都很好,当我直接将它放在一个html文件(内联)中时,脚本正常工作。当它放在一个javascript文件中时它就像它不起作用这就是清单v2想要的东西。

0 个答案:

没有答案