【发布时间】:2011-06-17 14:09:06
【问题描述】:
我想将一个通常在右侧浮动的div移动到一个绝对位置(由js确定),然后回到它的初始位置。
第一部分已经起作用,并且依赖于为对象设置“style.”标签..类似于
mytarget.style.position="absolute";
mytarget.style.top="50px";
要将其移回,我只想将标准类分配回元素,该元素还将包含定位信息。
奇怪的是,除了重新定位之外,一切都可以。 以下是相关代码:
var mytarget= document.getElementById(titlebarid);
var newclass=tabstyleclasses[titlebarid][ismaxedtab[titlebarid]];
mytarget.className= newclass ;
调试:
alert ("wanting to set : " + newclass ) ;
这会输出正确的值。 ("adfieldtitlesm")
alert ("my target is " +mytarget.id);
同样有效。
alert ("new class is " + mytarget.className );
也给出正确的值。 ("adfieldtitlesm")
alert ("new position is " + mytarget.style.position );
给出“绝对”(之前由 JS 在移动 mytarget 时设置),应该是“固定”
这是 CSS 类:
.adfieldtitlesm
{
position: fixed;
top: 200px;
left: 50px;
font-size: 50px;
background-color: #000000;
color: #ffffff;
}
为什么对象在类被设置后不会移动?
更新:链接
与此相关的部分是第一步的rebuildtabs() 中的第270-297 行(主要是290-294),这是有效的 和 minwidget() 中的第 160-183 行 为稍微凌乱的代码道歉:)
【问题讨论】:
-
您有我们可以查看的实时链接吗?调试单词非常困难。
-
您是否使用其他
position值进行了调试,以查看问题是否出在fixed值上,或者是否是其他问题?您是否尝试过手动设置position值而不是依赖类定义? -
是的,我确实尝试了其他位置值,但不幸的是无济于事.. 尝试将其上传到某个地方,可能需要 10 分钟 ..
-
太棒了;在任何大多数其他网站上,您都需要等待 3 天才能有人回答,在 S.O.你道歉10分钟!我喜欢它。'
标签: javascript css positioning classname