2016-08-16 66 views
0

爲進度條編寫的以下腳本與id=container1分配給div。這是當我有幾個div s與像容器2,容器3和...這一切都應該被引用到這個腳本。如何在一個javascript代碼中定義多個「id」?

如何將此腳本分配給所有div

var bar = new ProgressBar.Line(container1, { 
    strokeWidth: 4, 
    easing: 'easeInOut', 
    duration: 1400, 
    color: '#66cc33', 
    trailColor: 'transparent', 
    trailWidth: 1, 
    svgStyle: { 
    width: '100%', 
    height: '100%', 
    position: 'absolute' 
    } 
}); 

bar.animate(1.0); // Number from 0.0 to 1.0 
+0

我可以知道'ProgressBar.Line'的定義在哪裏? –

+0

通過調用瀏覽並在javascript中應用 –

+0

'ProgressBar.Line'代碼通過'id =「container1」'作用於分區,我希望它能在分區上使用id:container2,container3和...以及。 – syzd

回答

0

如果不使用閉包,然後每個容器都從窗口對象的訪問,你可以使用數組訪問得到的對象:

var containerCount = 5; 
for (var i = 1; i <= containerCount; i++) { 
    var bar = new ProgressBar.Line(window["container" + i, { 
     // Stuff here 
    } 
} 

如果使用閉然後你需要把它們放在一個對象中並使用相同的東西,但用對象的名稱替換window

1

如果我正確理解你的問題,你想要幾個progressBar實例引用相同的選項對象。

var progressBarOptions={ 
    strokeWidth: 4, 
    easing: 'easeInOut', 
    duration: 1400, 
    color: '#66cc33', 
    trailColor: 'transparent', 
    trailWidth: 1, 
    svgStyle: { 
    width: '100%', 
    height: '100%', 
    position: 'absolute' 
    } 
} 

var bar1 = new ProgressBar.Line(container1, progressBarOptions); 
var bar2 = new ProgressBar.Line(container2, progressBarOptions); 
var bar3 = new ProgressBar.Line(container3, progressBarOptions); 
0

它取決於ProgressBar的API。您必須閱讀API文檔或ProgressBar.Line的定義以確定new ProgressBar.Line(option)是否每次都可以返回相同的實例。