我的代码中有以下行。它是由我的IDE生成的。基本上这一行包含一个div作为动画侧边栏。侧边栏的宽度由' v'表示。参数(在这里设置为85)。
<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}">
&#13;
我想改变&#39; v&#39;的价值。使用脚本标记到250。
我尝试插入以下脚本来覆盖上面的data-anim属性,但它不起作用。
<script>
document.getElementById("sidebar").jsonObj['data-anim'] = "{'style':'overlap', 'v':250, 'side':'right', 'dur':200}"
</script>
&#13;
关于我的<script>
代码有什么问题的任何想法?
答案 0 :(得分: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}">
答案 1 :(得分:0)
我找到了自己问题的答案。
以下是可行的<script>
:
document.getElementById(“sidebar”)。dataset.anim =“{'style':'overlap','v':250,'side':'right','dur':200}”;