English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
このサンプルでは、jsでファーウェイ微博メッセージ公開機能の具体のコードを共有しました。以下に詳細を示します。
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>ファーウェイ微博メッセージ公開機能/title> <style> *{margin: 0; padding: 0;} #div1{width: 400px; height: 400px; border: 1px solid; margin:10px auto; position: relative;overflow: hidden;} #ul1 li{border-bottom: 1px #999 dashed; padding: 4px; list-style: none;filter: alpha(opacity:0); opacity: 0;} </style> <script src="js/chuan.js"></script> </head> <body> <textarea rows="5" cols="30" id="txt1"value=""></textarea> <input type="button" id="btn1" value="发布" /> <div id="div1"> <ul id="ul1></ul> </div> <script> var oUl=document.getElementById('ul';1); var oTxt1=document.getElementById('txt';1); var oBtn=document.getElementById('btn';1); oBtn.onclick=function() { var oLi=document.createElement('li'); oLi.innerHTML=oTxt1.value; oTxt1.value=''; if(oUl.children.length>0) { oUl.insertBefore(oLi,oUl.children[0]); } else { oUl.appendChild(oLi); } var iHeight=oLi.offsetHeight; oLi.style.height=0; move(oLi,{height:iHeight},function() { move(oLi,{opacity:100}); }); } </script> </body> </html>
chuan,jsは以前に書いた完璧な動きフレームワークです:
function getstyle(obj,name) { if(obj.currentStyle) { return obj.currentStyle; } else { return getComputedStyle(obj,false)[name]; } } function move(obj,json,fnEnd)}} { clearInterval(obj.timer); obj.timer=setInterval(function() { var bBox=true;//すべての値が既に到達したと仮定します for(var strr in json) { if(strr=='opacity') { var cur=Math.round(parseFloat(getstyle(obj,strr))*100); } else { var cur=parseInt(getstyle(obj,strr)); } var speed=(json[strr]-cur)/10; speed=speed>0?Math.ceil(speed):Math.floor(speed); if(cur!=json[strr]) bBox=false; if(strr=='opacity') { obj.style.filter='alpha(opacity:'+(cur+speed+')'); obj.style.opacity=(cur+speed)/100; } else { obj.style[strr]=cur+speed+'px'; } } if(bBox) { clearInterval(obj.timer); if(fnEnd)fnEnd(); } },30); };
これで本記事の全てです。皆様の学習に役立てば幸いです。また、ナイアラ・チュートリアルのサポートをどうぞよろしくお願いします。
声明:本記事の内容はインターネットから収集され、著作権者に帰属します。インターネットユーザーにより自発的に提供され、アップロードされた内容であり、本サイトは所有権を持ちません。人工編集は行われていません。また、関連する法的責任を負いません。著作権侵害を疑う内容がある場合は、以下のメールアドレスまでご連絡ください:notice#oldtoolbag.com(メールを送信する際には、#を@に置き換えてください。申し訳ありませんが、関連する証拠を提供し、確認がとれた場合、本サイトは即座に侵害を疑われるコンテンツを削除します。)