我使用以下代码为id=""
document.getElementById('s4-ca').style.marginLeft = '0px';
然而得到像Object Required这样的错误!
更新 - 我的代码
<script type="text/javascript">
var groupName;
$().SPServices({
operation: "GetGroupCollectionFromUser",
userLoginName: $().SPServices.SPGetCurrentUser(),
async: false,
completefunc: function(xData, Status) {
$(xData.responseXML).find("[nodeName=Group]").each(function()
{
groupName = $(this).attr("Name");
});
}
});
if($.trim(groupName) != 'ABC')
{
document.getElementById('s4-leftpanel').style.display = 'none';
document.getElementById('s4-ca').style.marginLeft = '0px';
}
</Script>
答案 0 :(得分:1)
不可复制:http://jsfiddle.net/VH2z2/
我假设您在元素可用之前致电document.getElementById
。
将代码包含在页面底部或load
事件处理程序中,例如
window.onload = function() {
document.getElementById('s4-ca').style.marginLeft = '0px';
};
如果有其他JavaScript代码可能会设置load
事件处理程序(您将覆盖它),则不应执行此操作。
答案 1 :(得分:0)
这样的事可能吗?
$('#s4-ca').css({ marginLeft: 0 });
答案 2 :(得分:0)
$('#s4-ca').css({ marginLeft: 0 });
或
$('#s4-ca').css('margin-left', 0 );
你的代码不是jquery,但上面的代码是在jquery中执行此操作的方法,两者都有效。
更新:您的错误消息可能意味着没有id =“s4-ca”的元素,请检查这样的元素!看到这个jsfiddle:http://jsfiddle.net/4DzyW/你的代码在哪里工作。
答案 3 :(得分:0)
答案 4 :(得分:0)
问题是“对象需求” 这意味着
document.getElementById('s4-ca')
什么都不返回,你必须确保id为's4-ca'的元素存在
答案 5 :(得分:0)
您的JavaScript没有任何问题,只需给<div>
一个匹配的id
属性,那么它应该可以正常工作,即
<div id="s4-ca"></div>
因此,您收到错误的原因是因为document.getElementById('s4-ca')
找不到匹配id
的en元素,所以它是null
,您无法引用
style
属性
此外,当您设置marginLeft
时,无需指定零的单位,您只能使用0
。
document.getElementById('s4-ca').style.marginLeft = "0";