2

私はCSSアニメーションでUIWebViewを使用しています。これは、アルファ0から1にロードされるときに本体をアニメーション化します。

 NSString *HTML = [NSString stringWithFormat:@"<html> \n"
                      "<head> \n"
                      "<style type=\"text/css\"> \n"
                      "@-webkit-keyframes fadeIn {from {opacity: 0;-webkit-transition: opacity;}to {opacity: 1;}} \n"
                      "body {\n"
                      "-webkit-animation-name:fadeIn;\n"
                      "-webkit-animation-duration: 1.5s;\n"
                       ...

私の質問は、Javascriptを使用してこのアニメーションを手動で呼び出すと、いつでもJSを呼び出すと、ビューが0から1までアニメーション化されるようになります(ロード時にアニメーション化するだけではありません)。または、これはCSSでは不可能ですか?

基本的に私はこれをしたい:

[mainWebView stringByEvaluatingJavaScriptFromString:@"/*animate*/"];
4

2 に答える 2

1

これを行うには、トランジションをボディに追加し、後で jQuery またはその他のライブラリを介してトランジションが添付されたプロパティを変更するクラスを選択時にボディに追加します。これの簡単な例はここにあります:

http://jsfiddle.net/Fwteu/4/

そして、コールバックからの不透明度をアニメーション化して本文を表示する例:

http://jsfiddle.net/tCfb5/

于 2012-07-08T22:08:00.503 に答える
0

opacity: 0通常の CSS を (クラスなどを介して) 設定domObject.style.opacity = 1し、ロード時に実行する JavaScript を設定するだけです。プロパティが変更されるたびにアニメーションが発生するため、アニメーションを発生させたいときにプロパティを変更するだけで済みます。

于 2012-07-08T22:02:36.873 に答える