2011-12-06 102 views
1

我用下面的代码来设置一个div的左边距与id=""如何使用JavaScript设置marginLeft属性?

document.getElementById('s4-ca').style.marginLeft = '0px'; 

然而越来越像必选对象的错误!

更新 - 我的代码

<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> 
+1

这是为什么标签的jQuery? – alex

+0

对不起,我不知道Jquery,我用这个为我的Sharepoint 2010母版页!!我不知道你标记的JQuery意味着什么! – Jithu

+0

你的标题说“JQuery - 如何设置保证金剩余财产”,不是吗? – Paparappa

回答

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"; 
+0

PLZ看看更新的问题,PLZ也表明我的问题是的jQuery或JavaScript,有人改了我的标题和查询JavsScript! – Jithu

0

像这样的事情可能?

$('#s4-ca').css({ marginLeft: 0 }); 
+0

PLZ看看更新的代码,简化版,似乎工作!我正在做一个SharePoint的主页! – Jithu

0
$('#s4-ca').css({ marginLeft: 0 }); 

$('#s4-ca').css('margin-left', 0); 

你的代码是不是jQuery的,但上面的代码是jQuery中做到这一点的方式,无论是工作。

更新:你的错误信息可能意味着没有id =“s4-ca”的元素,请检查这样的元素!看到这个jsfiddle:http://jsfiddle.net/4DzyW/你的代码在哪里工作。

如果你想使用jQuery
+0

Plz看看更新的代码,似乎没有工作!我正在做一个SharePoint的主页! – Jithu

0

(根据你的问题的标签)jQuery的

+0

Plz看看更新的代码,似乎没有工作!我正在做一个SharePoint的主页! – Jithu

1

$("#s4-ca").css('marginLeft','0px'); 

.css阿比不可再生:http://jsfiddle.net/VH2z2/

我假设你叫document.getElementById元素前可用。

可以在页面底部或在load事件处理程序中包含代码,例如,

window.onload = function() { 
    document.getElementById('s4-ca').style.marginLeft = '0px'; 
}; 

你不应该这样做,如果有其他的JavaScript代码,这可能会设置一个load事件处理程序(你会覆盖它)。

+0

Plz看看更新的代码,似乎没有工作!我正在做一个SharePoint的主页! – Jithu

0

问题是 “对象requierd” 这意味着

document.getElementById('s4-ca') 

回报什么,你必须确保一个元素ID为 'S4-CA' 存在

+0

Plz看看更新后的代码,我正在做一个SharePoint的主页! – Jithu