Hello,
I'm new! It's the fisrt week that I work with Jquery.
With this code I try to do a litte 3D tags cloud.
I have found this code on a web site and modified it a little for my need.
But there is something that I don't arrive to change in this code.
I would like that tags cloud doesn't move if anyone touch it.
Thank you for your help! :)
<style type="text/css" media="screen">
body{
font-family: Arial, "MS Trebuchet", sans-serif;
background-color: #ffffff;
}
#list{
height:50px;
width:200px;
overflow:hidden;
position:relative;
background-color: #6252dc;
}
#list ul,
#list li{
list-style:none;
margin:0;
padding:0;
}
#list a{
position:absolute;
text-decoration: none;
color:#ffffff;
}
#list a:hover{
color:#002060;
}
</style>
<script src="
http://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js" type="text/javascript" charset="utf-8"></script>
</head>
<body>
<div id="list">
<ul>
<li><a href="#">ECA</a></li>
<li><a href="#">Russia</a></li>
<li><a href="#">Kazakhstan</a></li>
<li><a href="#">Americas</a></li>
<li><a href="#">Canada</a></li>
<li><a href="#">Northern Europe</a></li>
<li><a href="#">Norway</a></li>
<li><a href="#">Transverse</a></li>
</ul>
</div>
<script type="text/javascript">
$(document).ready(function(){
var element = $('#list a');
var offset = 0;
var stepping = 0.03;
var list = $('#list');
var $list = $(list)
$list.mousemove(function(e){
var topOfList = $list.eq(0).offset().top
var listHeight = $list.height()
stepping = (e.clientY - topOfList) / listHeight * 0.2 - 0.1;
});
for (var i = element.length - 1; i >= 0; i--)
{
element[i].elemAngle = i * Math.PI * 2 / element.length;
}
setInterval(render, 20);
function render(){
for (var i = element.length - 1; i >= 0; i--){
var angle = element[i].elemAngle + offset;
x = 120 + Math.sin(angle) * 0;
y = 45 + Math.cos(angle) * 70;
size = Math.round(40 - Math.sin(angle) * 40);
var elementCenter = $(element[i]).width() / 2;
var leftValue = (($list.width()/2) * x / 120 - elementCenter) + "px"
$(element[i]).css("fontSize", '11pt');
$(element[i]).css("opacity",size/100);
$(element[i]).css("zIndex" ,size);
$(element[i]).css("left" ,leftValue);
$(element[i]).css("top", y + "%");
}
offset += stepping;
}
});
</script>
</body>
</html>