JQuery Sparkline 說明文檔


來自:http://wenku.baidu.com/link?url=G2JoOrHKrwinFAY03-QpigyvZ2Jg_fZ0JKRtEcnX7jCPyeb4F9cBSC6gT1xKt2XAyHdhPd-lKFuhImeOFdCsjvgzSyWn_oZALo6zgwSsKpm

JQuery. Sparkline線狀圖插件

圖形的類型,共有'line' (default), 'bar', 'tristate', 'discrete', 'bullet', 'pie' , 'box'

 

使用Sparklines你需要四件事情:

1、jQuery JavaScript庫使用至少1.2或更高版本

2、在頁面中引用jquery.sparkline-2.1.2.min.js插件.

3、在頁面上內嵌一個標簽來顯示sparkline.

4、實際上調用sparkline()函數來顯示sparkline。 

下面我做一個簡單的小例子

首先在你的頁面頭部添加JS引用

<script type="text/javascript" src="jquery-1.4.4.js">script> 
    <script type="text/javascript" src="jquery.sparkline.js">script> 

添加一個SPAN

Inline Sparkline: <span class="inlinesparkline">1,4,4,7,5,9,10</span> 

JS代碼

$(function() { 
       /** This code runs when everything has been loaded on the page */ 
       /* Inline sparklines take their values from the contents of the tag */ 
       $('.inlinesparkline').sparkline();  
 
 
   }); 

控件通用屬性

type            - line (default), bar, tristate, discrete, bullet, pie or box;

 

width           -圖表的寬度- '默認為'auto -可以是任何有效的CSS寬度- 1.5em,20像素等,對bar與tristate無效

 

height          -圖表的高度的-默認為'auto'

 

lineColor       -圖表描線顏色

fillColor       -填充顏色,設置為false,以禁用填充。

 

chartRangeMin   -指定要使用的最小值范圍的Y值的圖表——默認提供的最小值

 

chartRangeMax   -指定要使用的最大值的Y值的范圍圖,默認提供的最大價值

 

composite       -是否使用組合,如果為true,則不重繪圖形

 

enableTagOptions -如果為true選項可以被指定為屬性,每個標簽上sparkline將進行改造,以及傳遞給sparkline()函數。 另見tagOptionPrefix

 

tagOptionPrefix -每個選項的字符串作為一個屬性傳遞給一個標記。默認為“spark”

 

tagValuesAttribute –根據屬性名稱的標簽獲取“value”

 

 

line線圖特殊屬性

defaultPixelsPerValue

每一個值所占的寬度,默認為3px

spotColor

數據點的顏色,false表示不顯示

minSpotColor

最小數據點的顏色,false表示不顯示

maxSpotColor

最大數據點的顏色,false表示不顯示

spotRadius

標志點的半徑

valueSpots

{':4': 'green', '5:': 'red'},//表示低於4的用綠色表示,大於5的用紅色表示

highlightSpotColor

最高數據點的顏色

highlightLineColor

最高數據線的顏色

lineWidth

線的寬度

normalRangeMin, normalRangeMax

指定閾值之間畫一條表示“正常”或預期的值的范圍。

指定閾值之間畫一條表示“正常”或預期的值的范圍。

drawNormalOnTop

默認情況下正常范圍畫背后的填充區域圖。將此選項設置為true使其在填充區域的頂部

chartRangeClip

chartRangeMin和chartRangeMax之間——默認情況下chartRangeMin / Max只是確保圖至少跨越的值的范圍,但並不限制它

chartRangeMinX

指定使用的最小值的X值圖

chartRangeMaxX

指定使用的最大值的X值圖

Bar Charts柱狀圖特殊屬性

barColor

柱體顏色

negBarColor

負柱體的顏色

zeroColor

柱體等於0的顏色

nullColor

為空的顏色

barWidth

柱體的寬度

barSpacing

柱體之間的間隔

zeroAxis

 如果為true,把0軸線居中

colorMap

映射到特定值所選的顏色。例如如果你想要的值2出現黃色,使用colorMap:{“2”:“# ff0”}。

stackedBarColor

堆柱體的顏色

     

Tristate Charts特殊屬性

posBarColor

正柱體的顏色

negBarColor

負柱體的顏色

zeroBarColor

為0時柱體的顏色

barWidth

柱體的寬度

barSpacing

柱體之間的間隔

colorMap

映射到特定值所選的顏色。例如如果你想要的值2出現黃色,使用colorMap:{“2”:“# ff0”}。

Discrete Charts特殊屬性

lineHeight

每一行的像素高度,默認為30%的圖的高度

thresholdValue

低於此值的將使用thresholdColor進行繪制

thresholdColor

顏色使用結合thresholdValue

Bullet Graphs子彈圖特殊屬性

targetColor

垂直線的顏色

targetWidth

垂直線的寬度

performanceColor

中間橫條的顏色

rangeColors

背景顏色變化范圍

Pie Charts餅圖特殊屬性

sliceColors

餅圖分區的顏色

offset

在度來抵消第一片- -90或+ 90

borderWidth

邊框的寬度,默認沒有邊框

borderColor

邊框的顏色,默認為“#000”

這些小餅圖只能用2或3個值

Sparkline用法

基本用法:

$(selector).sparkline(values, options);

values可以是一系列數字或從“html”標簽中讀取的值

<span class="sparklines">1,2,3,4,5,4,3,2,1</span>

<span id="ticker"">Loading..</span>             

                                                

<script type="text/javascript">                 

$('.sparklines').sparkline('html');             

$('#ticker').sparkline([1,2,3,4,5,4,3,2,1]);    

</script>                                       

Options選項是一個對象,它指定sparkline畫的類型,顏色,等等。

$('#barchart').sparkline(myvalues, { type:'bar', barColor:'green' });

如果有必要,options可以作為屬性傳遞在每個標簽選項。

<span class="sparklines" sparkType="bar" sparkBarColor="green"><!-- 1,2,3,4,3,2,1 --></span>                                           

<span class="sparklines" sparkType="bar" sparkBarColor="red"><!-- 1,2,3,4,3,2,1 --></span>                                           

                                                                   

<script type="text/javascript">                                    

$('.sparklines').sparkline('html', { enableTagOptions: true });    

</script>                                                          

每個選項必須以“spark”為前綴。

你也可以覆蓋默認的選項將值分配給所有后續微線圖

$.fn.sparkline.defaults                         

例如:

$.fn.sparkline.defaults.common.lineColor = 'red';

或者

$.fn.sparkline.defaults.common = {              

…                                              

};                                              

可以將commont替換為line,bar,tristate,discrete,bullet,pie等

 

$.extend()方法

JQuery的extend擴展方法:
Jquery的擴展方法extend是我們在寫插件的過程中常用的方法,該方法有一些重載原型,

一、Jquery的擴展方法原型是:  

   extend(dest,src1,src2,src3...);

它的含義是將src1,src2,src3...合並到dest中,返回值為合並后的dest,由此可以看出該方法合並后,是修改了dest的結構的。如果想要得到合並的結果卻又不想修改dest的結構,可以如下使用:

  var newSrc=$.extend({},src1,src2,src3...)//也就是將"{}"作為dest參數。

這樣就可以將src1,src2,src3...進行合並,然后將合並結果返回給newSrc了。如下例:

var result=$.extend({},{name:"Tom",age:21},{name:"Jerry",sex:"Boy"})

那么合並后的結果:

  result={name:"Jerry",age:21,sex:"Boy"}

也就是說后面的參數如果和前面的參數存在相同的名稱,那么后面的會覆蓋前面的參數值。

二、省略dest參數
 上述的extend方法原型中的dest參數是可以省略的,如果省略了,則該方法就只能有一個src參數,而且是將該src合並到調用extend方法的對象中去,如:
   1、$.extend(src)
   該方法就是將src合並到jquery的全局對象中去,如:

$.extend({
       hello:function(){alert('hello');}
   });
就是將hello方法合並到jquery的全局對象中。
2、$.fn.extend(src)
該方法將src合並到jquery的實例對象中去,如:

         $.fn.extend({
            hello:function(){alert('hello');}
         }); 

   就是將hello方法合並到jquery的實例對象中。

   下面例舉幾個常用的擴展實例:

       $.extend({net:{}}); 

   這是在jquery全局對象中擴展一個net命名空間。

         $.extend($.net,{
            hello:function(){alert('hello');}
         })
    這是將hello方法擴展到之前擴展的Jquery的net命名空間中去。

三、Jquery的extend方法還有一個重載原型:  

extend(boolean,dest,src1,src2,src3...)
第一個參數boolean代表是否進行深度拷貝,其余參數和前面介紹的一致,什么叫深層拷貝,我們看一個例子:

var result=$.extend( true,  {}, 
    { name: "John", location: {city: "Boston",county:"USA"} }, 
    { last: "Resig", location: {state: "MA",county:"China"} } );


我們可以看出src1中嵌套子對象location:{city:"Boston"},src2中也嵌套子對象location:{state:"MA"},第一個深度拷貝參數為true,那么合並后的結果就是: 

result={name:"John",last:"Resig",
        location:{city:"Boston",state:"MA",county:"China"}} 

也就是說它會將src中的嵌套子對象也進行合並,而如果第一個參數boolean為false,我們看看合並的結果是什么,如下:

var result=$.extend( false, {}, 
{ name: "John", location:{city: "Boston",county:"USA"} }, 
{ last: "Resig", location: {state: "MA",county:"China"} } 
                    );

那么合並后的結果就是:

  result={name:"John",last:"Resig",location:{state:"MA",county:"China"}}

以上就是$.extend()在項目中經常會使用到的一些細節。

setInterval()與setTimeOut()方法的區別

1,HTML DOM setInterval() 方法
定義和用法
setInterval() 方法可按照指定的周期(以毫秒計)來調用函數或計算表達式。
setInterval() 方法會不停地調用函數,直到 clearInterval() 被調用或窗口被關閉。由 setInterval() 返回的 ID 值可用作 clearInterval() 方法的參數。
語法
setInterval(code,millisec["lang"])
參數 描述
code 必需。要調用的函數或要執行的代碼串。
millisec 必須。周期性執行或調用 code 之間的時間間隔,以毫秒計。
返回值 :一個可以傳遞給 Window.clearInterval() 從而取消對 code 的周期性執行的值
2,HTML DOM clearInterval()方法
定義和用法
clearInterval() 方法可取消由 setInterval() 設置的 timeout。
clearInterval() 方法的參數必須是由 setInterval() 返回的 ID 值。
語法
clearInterval(id_of_setinterval)
參數 描述
id_of_setinterval 由 setInterval() 返回的 ID 值。
如何停止:
下面這個例子將每隔 50 毫秒調用 clock() 函數。您也可以使用一個按鈕來停止這個 clock:

 

<html>                                                         

<body>                                                         

<form>                                                        

<input type="text" id="clock" size="35" />                     

<button onclick="int=window.clearInterval(int)">               

Stop interval</button>                                         

</form>                                                        

<script language=javascript>                                   

var int=self.setInterval("clock()",50)                         

function clock()                                               

{                                                              

var t=new Date()                                               

document.getElementById("clock").value=t                       

}                                                              

</script>                                                      

</body>                                                        

</html>                                                        


1,HTML DOM setTimeout() 方法
定義和用法
setTimeout() 方法用於在指定的毫秒數后調用函數或計算表達式。
語法
setTimeout(code,millisec)
參數 描述
code 必需。要調用的函數后要執行的 JavaScript 代碼串。
millisec 必需。在執行代碼前需等待的毫秒數。
提示和注釋
提示:setTimeout() 只執行 code 一次。如果要多次調用,請使用 setInterval() 或者讓 code 自身再次調用 setTimeout()。
實例,這個例子,在你點擊按鈕 5 秒鍾后會彈出一個提示框:

<html>                                                                

<head>                                                                

</head>                                                               

<body>                                                                

<form>                                                                

<input type="button" value="Display timed alertbox!"                  

onClick="timedMsg()">                                                 

</form>                                                               

<p>Click on the button above. An alert box will be                    

displayed after 5 seconds.</p>                                        

<script type="text/javascript">                                       

function timedMsg()                                                   

{                                                                     

var t=setTimeout("alert('5 seconds!')",5000)                          

}                                                                     

</script>                                                             

</body>                                                               

</html>                                                               
2,HTML DOM clearTimeout() 方法
定義和用法clearTimeout() 方法可取消由 setTimeout() 方法設置的 timeout。語法clearTimeout(id_of_settimeout)
參數 描述
id_of_setinterval 由 setTimeout() 返回的 ID 值。該值標識要取消的延遲執行代碼塊。
實例下面的例子每秒調用一次 timedCount() 函數。您也可以使用一個按鈕來終止這個定時消息:

<html>                                                                

<head>                                                                

</head>                                                               

<body>                                                                

<form>                                                                

<input type="button" value="Start count!" onClick="timedCount()">     

<input type="text" id="txt">                                          

<input type="button" value="Stop count!" onClick="stopCount()">       

</form>                                                               

<script type="text/javascript">                                       

var c=0                                                               

var t                                                                 

function timedCount()                                                 

{                                                                     

document.getElementById('txt').value=c                                

c=c+1                                                                 

t=setTimeout("timedCount()",1000)                                     

}                                                                     

function stopCount()                                                  

{                                                                     

clearTimeout(t)                                                       

}                                                                     

</script>                                                             

</body>                                                               

</html>                                                              

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM