2017-11-18 89 views
0

我正在使用一個使用jQuery插件的html主題。例如:angularjs 1.x修改數據屬性

<div class="slide background-overlay-dark" data-parallax-image="images/parallax/4.jpg"> 
</div> 

我如何將能夠修改數據視差圖像=「」從控制器,無需編寫指令,因爲有很多這樣的情況。

+0

你不......使用指令。一個指令暴露了每個元素,並確保它在插件代碼運行之前就存在了。 – charlietfl

+0

你介意那麼就給我幾行代碼來說明如何爲這個例子做這件事? –

+0

大量用於將jQuery插件集成到指令中的示例。在這個網站和網絡的其他部分 – charlietfl

回答

0

如果你願意,你可以用普通的javascript來做到這一點。同樣的實現將是這樣的。

給你的div一個id,如id="div1"在我的情況。

HTML代碼

<div id="div1" class="slide background-overlay-dark" data-parallax-image="images/parallax/4.jpg"></div> 

現在在你的控制器編寫JavaScript函數更新data-parallax-image屬性。

控制器

var element = document.getElementById("div1"); 
function changeImage() { 
    var imageName = "something-"+Date.now(); 
    element.setAttribute('data-parallax-image', imageName); 
} 
setInterval(function() { 
    changeImage(); 
}, 1000); 

changeImage功能將修改從控制器data-parallax-image而不進行指令。在給定的代碼中,我以一秒的間隔運行changeImage()。這個邏輯完全取決於你,你可以相應地編寫它。