質問: javascript rotator について。 javascript rotator について。 こんばんは。 javascriptについてソースを拝見してもわからなく 行き詰ってしまったのでこちらで質問させて頂きました。 この度、下記のjavaを使用してホームページを作成したく思っております。 【説明】http://www.skuare.net/test/j3drotator_1.html 【デモ】http://www.skuare.net/test/j3drotator.html が、そこで一つお尋ねしたいのですが テキストには遠近感がついていますが画像には遠近感が全くありません。 画像にも手前は大きく、奥に行けば小さくなるアクションを付ける場合は どの様に改善すれば宜しいのでしょうか? また、参考になるサイトでもあれば良いのですが・・・(涙 初歩的な質問だとは思いますが 何卒、ご教授宜しくお願い致します。
回答: まわせ!まわせ~!むずかしいざひょうけいはむししてるけど・・・ すべてのぜんかくくうはくは、はんかくにしてちょ! #box { width : 800px; height : 800px; background-color: black; list-style :none; margin: 0; padding: 0; } #box li { color : #fff; } * 1 * 2 * 3 * 4 * 5 * 6 * 7 * 8 * 9 (function ( ) { var node = document.getelementbyid ('box'); var lis = node.getelementsbytagname ('li'); var cnt, li; var parts = [ ]; var cx = node.offsetwidth / 2; var cy = node.offsetheight / 2; var r = 300; var n = 360 / lis.length; var xr = 3; var yr = 1; var zr = .5; var deg = math.pi / 180; var depth = 1000; var scale = 700; node.style.position = 'relative'; node.style.overflow = 'hidden'; // ざひょうのていぎ for (cnt = 0; li = lis[cnt]; cnt++) { li.style.position = 'absolute'; parts.push ( { 'element' : li, 'x' : math.sin (n * cnt * deg) * r, 'y' : 0, 'z' : math.cos (n * cnt * deg) * r, 'alpha' : 1, 'scale' : 1 }); } (function ( ) { var x, y, z, mx, my, mz, p, t, xx, yy, zz, s, ss; for (cnt = 0; p = parts[cnt++]; ) { x = p.x, y = p.y, z = p.z, s = p.element.style; if (xr) { //x軸の回転 t = xr * deg; my = y * math.cos (t) - z * math.sin (t); mz = y * math.sin (t) + z * math.cos (t); y = my, z = mz; } if (yr) { t = yr * deg; mx = x * math.cos (t) - z * math.sin (t); mz = x * math.sin (t) + z * math.cos (t); x = mx, z = mz; } if (zr) { t = zr * deg; mx = x * math.cos (t) - y * math.sin (t); my = x * math.sin (t) + y * math.cos (t); x = mx, y = my; } zz = (z + depth) / scale; xx = (cx + x / zz) |0; yy = (cy + y / zz) |0; s.top = yy + 'px'; s.left = xx + 'px'; s.fontsize = scale - (zz * 300 |0) + '%'; p.x = x, p.y = y, p.z = z; } settimeout (arguments.callee, 30); })(); })();