将CSS添加到Javascript小部件

将CSS添加到Javascript小部件,javascript,css,Javascript,Css,我正在开发一个Javascript小部件供其他网站使用。我有2个Java脚本和一个php文件。一个Javascript供用户使用,另一个用于发出JSON请求,php用于挖掘数据。事情进展顺利,数据也在显示中 现在我需要向小部件添加CSS。我不想让用户在他们这边编写CSS。我该怎么做?我需要所有内联css的代码吗?或者在javascript中附加css文件 我知道这是非常基本的。但是,我对这些东西不熟悉。所以,如果你们能给我指出正确的方向,那就太好了。我需要的样本代码以及。我检查了很多网站。他们只

我正在开发一个Javascript小部件供其他网站使用。我有2个Java脚本和一个php文件。一个Javascript供用户使用,另一个用于发出JSON请求,php用于挖掘数据。事情进展顺利,数据也在显示中

现在我需要向小部件添加CSS。我不想让用户在他们这边编写CSS。我该怎么做?我需要所有内联css的代码吗?或者在javascript中附加css文件

我知道这是非常基本的。但是,我对这些东西不熟悉。所以,如果你们能给我指出正确的方向,那就太好了。我需要的样本代码以及。我检查了很多网站。他们只是拥有javascript代码

谢谢

    End user Javascript
------------------------

<script type="text/javascript" src="http://mydomain.com/userwidget.js"></script>
<div id="results">
</div>
<script type="text/javascript">
ajax_get_my_data();
</script>

AJAX Javascripit
----------------

function ajax_get_my_data(){
    var results = document.getElementById("results");
    var hr = new XMLHttpRequest();
    hr.open("POST", "http://mydomain.com/widgets/userwidgetcore.php", true);
    hr.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
    hr.onreadystatechange = function() {
        if(hr.readyState == 4 && hr.status == 200) {
            var data = JSON.parse(hr.responseText);
            results.innerHTML = "";
            for(var obj in data){
                results.innerHTML += data[obj].propertyA;
            }
        }
    }
    hr.send("var1=stock&var2=up");
    results.innerHTML = "requesting...";
}


PHP code
------------

<?php
header("Content-Type: application/json");
header("Access-Control-Allow-Origin: *");
...........
Databse logic
.......

         $_out = '<table id=\"rounded-corner\">';
         $_out .= '<thead>';
         $_out .= '<tr>';
         $_out .= '<th colspan=\"3\" scope=\"col\" class=\"rounded-q6\">Stocks Under Accumulation</th>';
         $_out .= '</tr>';      
         $_out .= '<tr>';
     $_out .= '<th scope=\"col\" class=\"rounded-q5\">Ticker</th>';
         $_out .= '<th scope=\"col\" class=\"rounded-q5\">Price % Change</th>'; 
         $_out .= '<th scope=\"col\" class=\"rounded-q5\">Volume % Change</th>'; 
     $_out .= '</tr>';
        $_out .= '</thead>';
    $_out .= '<tbody>';

  ..............  
 ..................
$jsonData = $_out;
echo $jsonData;
?>
最终用户Javascript
------------------------
ajax_获取我的数据();
AJAX Javascripit
----------------
函数ajax\u get\u my\u data(){
var results=document.getElementById(“结果”);
var hr=新的XMLHttpRequest();
人力资源部开放(“职位”)http://mydomain.com/widgets/userwidgetcore.php“,对);
hr.setRequestHeader(“内容类型”、“应用程序/x-www-form-urlencoded”);
hr.onreadystatechange=函数(){
如果(hr.readyState==4&&hr.status==200){
var data=JSON.parse(hr.responseText);
results.innerHTML=“”;
for(数据中的var obj){
results.innerHTML+=data[obj].propertyA;
}
}
}
hr.send(“var1=股票,var2=上涨”);
results.innerHTML=“请求…”;
}
PHP代码
------------
现在我需要将css加载到标记中。我怎么做?我不明白你的意思 但无论如何 css代码有三种方式

首先是像这样的html页面里面

<head>
<title>hello</title>
<style type="text/css">
body
{
background-color: #CC0000;
}
</style>
</head>
<link rel="stylesheet" href="css/sheet.css" media="screen"/>
$("body").css("background-color","#CC0000");

您可以通过javascript将其附加到页面的头部

var fileref=document.createElement("link");
  fileref.setAttribute("rel", "stylesheet");
  fileref.setAttribute("type", "text/css");
  fileref.setAttribute("href", "filename.css");
  document.getElementsByTagName("head")[0].appendChild(fileref);

为什么不简单地添加一个.css文件呢?内联css是最好的选择。以Twitter小部件为例。内联CSS不是您的最佳选择。它是不可重用的,并且很难维护/更新。它应该是第二个小部件的一部分吗?我不确定,因为你没有发布任何代码,我猜应该是用户在他们的页面上为widget工作而包含的部分。我现在在问题中添加了我的代码。它可能会让你更好地了解我的情况。将它添加到userwidget.jsNot working for me。我修改了代码并将其放置在wordpress站点小部件中。未获取css。请参阅此页。我也只是在创建一个股票市场小部件。我的输出是一个简单的HTML表。因此,我需要根据价格波动,用不同的颜色(红色或绿色)设计TH、TD和其他标签。谢谢我也喜欢这个答案。使用样式创建CSS文件,将其附加到DOM树(
),然后使用CSS类设置HTML表的样式。您可以使用HTML或javascript完成所有这些工作。如果您不想附加样式表,那么您可以像在该网站中一样将CSS放入HTML
标记中。我现在在问题中添加了我的代码。这也许能让你更好地了解我在干什么?