gpt4 book ai didi

javascript - 我注入(inject) CSS 的 Firefox 扩展无法工作

转载 作者:行者123 更新时间:2023-11-29 20:11:28 26 4
gpt4 key购买 nike

我正忙于开发 Firefox 扩展。我正在使用附加组件生成器

它会做什么:

  1. 从 PHP 页面获取 ID (XMLHttpRequest)

  2. 调用另一个函数并发送该 ID

  3. 该函数插入带有由 javascript 创建的链接标记的 CSS

我的问题:

这是行不通的。如果我提醒 currenttheme 变量,什么也不会发生。所以 XMLHttpRequest 似乎不起作用。

我的代码:

ma​​in.js:

var Widget = require("widget").Widget;
var tabs = require('tabs');
exports.main = function() {
var pageMod = require("page-mod");
var data = require("self").data;
scriptFiles = data.url("s.js");
pageMod.PageMod({
include: "*.facebook.com",
contentScriptWhen: 'ready',
contentScriptFile: scriptFiles
});

s.js

function addCSS(theTheme) {
var s = document.createElement('link');
s.type = 'text/css';
s.rel = 'stylesheet';
s.href = theTheme+'.css';
(document.head||document.documentElement).appendChild(s);
}

function getData() {
client = new XMLHttpRequest();
try{
client.open('GET','http://localhost:8888/istyla/login/popuplogin/myaccount.php');
} catch (e){
alert( "error while opening " + e.message );
}

client.onreadystatechange = function(){
if (client.readyState ==4){
user_data = client.responseText;
window.user_data = user_data;
var currenttheme = user_data;
window.currenttheme = currenttheme;
addCSS(currenttheme);
}
}

client.send(null);
}

getData();

附言CSS 文件位于数据文件夹中。

最佳答案

我对此很陌生,所以不确定是否可以提供帮助。如果有任何提示,您是否查看过错误控制台(ctrl+shift+j)?您可以使用 console.log(),它会显示在这里。

也许使用 Request lib 而不是 XMLHttpRequest

这是我的代码片段:

var Request = require("request").Request;

getUserDetails : function(userID, callback)
{
Request({
url: Proxy.remoteUrl,
content : {command:'getUser',UserID:userID},
onComplete: function(response) {callback(response.json)}
}).get();

}

关于javascript - 我注入(inject) CSS 的 Firefox 扩展无法工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9499745/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com