jquery in manifest v3 chrome extension

Viewed 121

i am trying to use jquery in manifest v3 extension

my service worker js file uses jquery for some ajax calls but i get error

  Error handling response: ReferenceError: $ is not defined

my manifest file is

   {
   "background": {
          "service_worker": "worker_wrapper.js"

   },
    "action": {
   },        
   "manifest_version": 3,
   "permissions": [ "\u003Call_urls>", "tabs", "activeTab", "storage", "unlimitedStorage", "notifications", "clipboardWrite", "downloads", "cookies" ],
   "update_url": "https://clients2.google.com/service/update2/crx",
   "version": "1.0.41",   
     "host_permissions": [
    "https://*.somesite.com/*" 
    ],
"content_scripts": [
    {
      "matches": ["http://*/*", "https://*/*", "<all_urls>"],
      "js": ["/libs/jquery-3.2.1.min.js","js/event.js"]   ,
      "run_at": "document_start"


    }
  ],
  "web_accessible_resources": [
    {
      "resources": ["toolbar_res/*","libs/*","js/*","html/*", "img/*", "_locales/*", "css/*","libs/jquery-3.2.1.min.js","js/event.js"],
      "matches": ["<all_urls>"],
             "use_dynamic_url": true

    }]
   
   
   
}

the service worker worker_wrapper.js file content is this

try {
    importScripts("js/event.js");
} catch (e) {
    console.log(e);

}

in event.js i am getting error in this position. this $ sign gives error

Error handling response: ReferenceError: $ is not defined

 this.L = $.ajax({
        processData: !1,
        contentType: !1,
        url: b,
        type: "POST",
        data: c,
        xhr: function() {
            var b = new XMLHttpRequest;
            b.upload.onprogress = function(b) {
                b.lengthComputable && a.i[a.f.w].fire({
                    loaded: b.loaded,
                    total: b.total
                })
            };
            return b
        },
        beforeSend: function() {},
        complete: function(b, c) {
            a.F = a.A.T;
            try {
                var g = $.parseXML(b.responseText);
                
                
                
                if (g && (g.getElementsByTagName("url").length || g.getElementsByTagName("share").length)) {
                    a.F = a.A.U;
                    var l = {};
                    g && (g.getElementsByTagName("url").length && g.getElementsByTagName("url")[0].innerHTML &&
                        (l.img_url = g.getElementsByTagName("url")[0].innerHTML), g.getElementsByTagName("thumb").length && g.getElementsByTagName("thumb")[0].innerHTML && (l.thumb_url = g.getElementsByTagName("thumb")[0].innerHTML), g.getElementsByTagName("share").length && g.getElementsByTagName("share")[0].innerHTML && (l.share_url = g.getElementsByTagName("share")[0].innerHTML), l.width = 0, l.height = 0, l.delete_hash = "");
                    a.ba = l
                } else a.a = B.s("msg1")
            } catch (k) {
                a.a = B.s("msg2") +
                    "\n\n", a.a += B.s("msg12") + ":\n", a.a += "status = " + (b && b.status ? b.status : "") + "\n", a.a += "textStatus = " + c + "\n", a.a += "e = " + k + "\n", a.a += "responseText = " + (b && b.responseText ? b.responseText : "") + "\n"
            }
            a.i[a.f.COMPLETE].fire(a.I())
        }
    })

any help on how to include jquery in service worker js file will be great. i tried including same jquery in worker js file but it does not work

0 Answers
Related