2016-01-13 77 views
1

我的代碼中有以下行。它是由我的IDE生成的。基本上這條線由一個作爲動畫邊欄的div組成。側欄的寬度由'v'參數表示(在此設置爲85)。如何使用Javascript更改JSON對象

<div id="sidebar" class="inner-element uib_w_5 uib_sidebar rightbar bar-bg thumb-bg bar-gutter" data-uib="layout/right_sidebar" data-ver="1" data-anim="{'style':'overlap', 'v':85, 'side':'right', 'dur':200}">

我想使用的腳本標記爲 'V' 的值更改爲250。

我試圖插入以下腳本來覆蓋上面的數據動畫屬性,但它沒有工作。

<script> 
 
document.getElementById("sidebar").jsonObj['data-anim'] = "{'style':'overlap', 'v':250, 'side':'right', 'dur':200}" 
 
</script>

任何想法有什麼錯我的<script>標籤?

回答

1

sidebar元素的使用setAttribute

應該

var sidebar = document.getElementById("sidebar"); 
sidebar.setAttribute("data-anim" , "{'style':'overlap', 'v':250, 'side':'right', 'dur':200}"); 

讀了this setAttribute documentation以及

document.getElementById("sidebar").setAttribute("data-anim", "{'style':'overlap', 'v':250, 'side':'right', 'dur':200}"); 
 

 
var abc = document.getElementById("sidebar").getAttribute("data-anim"); 
 

 
alert(abc);
<div id="sidebar" class="inner-element uib_w_5 uib_sidebar rightbar bar-bg thumb-bg bar-gutter" data-uib="layout/right_sidebar" data-ver="1" data-anim="{'style':'overlap', 'v':85, 'side':'right', 'dur':200}">

+0

@ozil感謝您提供更多信息。 – gurvinder372

0

我找到了一個關於我自己的問題。

這裏是<script>,將工作:

的document.getElementById( 「欄」)dataset.anim =「{ '風格': '重疊', 'V':250, '側':」右','dur':200}「;