changing CSS dynamically..

Skilled contributor
1Apr2009,15:22   #1
Bhullarz's Avatar
here is the code:
Code:
<head>
<script type="text/javascript">
function setpad()
	{alert(document.getElementById("complete").style.margin-left);}
</script>
<style type="text/css">
#complete{
margin-left:180px;}
</style>
</head>
<body onload="setpad();">
<div id="complete">
text data
</div>
</body>
I am unable to access property of div "complete" ie. margin-left. What could be the other way to change it?
I a getting the error that "left is undefined".
Go4Expert Founder
1Apr2009,16:24   #2
shabbir's Avatar
Its marginLeft and not margin-left
Skilled contributor
1Apr2009,21:31   #3
Bhullarz's Avatar
Quote:
Originally Posted by shabbir View Post
Its marginLeft and not margin-left
I am using Dreamweaver which shows margin-left. not marginLeft. by the way, marginLeft didn't work.
I am trying to setup the div in the middle of the screen independent of screen resolution.
How can I ?
Go4Expert Founder
1Apr2009,21:43   #4
shabbir's Avatar
It should.

Check this

HTML Code:
<html>
<head>
<script language="JavaScript">
function setMargin(){
  document.getElementById("myButton").style.marginLeft = 200;
}
</script>
</head>
<body>
<input type="button" id="myButton" value="Click Me" onclick="setMargin()">
</body>
</html>
Now screen.width would help to get it centered.
Skilled contributor
3Apr2009,17:05   #5
Bhullarz's Avatar
Quote:
Originally Posted by shabbir View Post
It should.

Check this

HTML Code:
<html>
<head>
<script language="JavaScript">
function setMargin(){
  document.getElementById("myButton").style.marginLeft = 200;
}
</script>
</head>
<body>
<input type="button" id="myButton" value="Click Me" onclick="setMargin()">
</body>
</html>
Now screen.width would help to get it centered.
thanks. it worked for me. Can you guide me where can I get cross-browser scripting tips ?
Skilled contributor
3Apr2009,17:49   #6
Bhullarz's Avatar
Code:
window.onscroll=function(){
document.getElementById("content").style.marginTop = document.getElementById("content").style.marginTop + document.body.scrollTop
}
using this code, I am trying to fix the div id="content" in the center while scrolling the page up/down. but this code is not working as value of marginTop and value of scrollTop are not getting added here, instead of that, it is getting concatenated..
How to fix this problem??
Go4Expert Founder
3Apr2009,21:37   #7
shabbir's Avatar
Try getting them into a variable and then add them as numbers
Skilled contributor
4Apr2009,17:28   #8
Bhullarz's Avatar
Quote:
Originally Posted by shabbir View Post
Try getting them into a variable and then add them as numbers
Code:
<script type="text/javascript">
var margin;
function setScrollPage(){
	document.getElementById("content").style.marginTop = parseInt(margin) + parseInt(window.document.body.scrollTop)
	document.title = document.getElementById("content").style.marginTop 
}
window.onscroll = function(){
	setScrollPage()			
}
</script>
I tried as u said. but still its not working. moreover IE is not setting the DIV in the center whereas FIREFOX successfully running the script of centering the DIV

Last edited by Bhullarz; 4Apr2009 at 17:31..
Go4Expert Founder
4Apr2009,20:00   #9
shabbir's Avatar
May be you need to see the scroll bar width.

Also IE compatibility is always an issue and let us know how it is not working in IE