Rico.Effect.FadeTo is null or not an object
Ajax用ライブラリRicoで簡単なフェードイン/アウトなどの特殊効果をかけようとしていますが
上記タイトル通りのエラーが出て動きません。もちろん、Sizeも動きません(note.jpgはちゃんと表示されますが)。
以下がソースです:
### sample256.html ###
<html>
<head>
<meta http-equiv="content-type" content="text/html;charset=Shift_JIS">
<title>sample256</title>
<script type="text/javascript" src="scripts/prototype.js"></script>
<script type="text/javascript" src="scripts/rico.js"></script>
</head>
<body>
<form>
<input type="button" onclick="new Rico.Effect.FadeTo('img1',0.1,1000,20);" value="消す">
<input type="button" onclick="new Rico.Effect.FadeTo('img1',1.0,1000,20);" value="表示">
<input type="button" onclick="new Rico.Effect.Size('img1',30,30,1000,20);" value="縮小">
<input type="button" onclick="new Rico.Effect.Size('img1',270,230,1000,20);" value="拡大">
</form>
<p/>
<img id="img1" src="images/note.jpg"/>
</body>
</html>
…OSはWindows Vista (64-bit)で、ブラウザーはIE8です。
もちろん、Eclipseを介してTomcatは動いています。
Ricoは最新版でRico21.zipです。prototype.jsもそのzipの中のものを使いました。
展開したzipファイルのsrcにあったすべてのファイルを./scripts/の下にコピペしています
(Google Chromeでソースファイルにあるリンクをクリックすれば、二つの.jsのソースコードが表示されるので、ちゃんと認識されていると思います)。
検索すると、ブラウザーのヴァージョンが問題のこともあるらしいですが、今回の場合はお互い最新のヴァージョンなので、それ以外に原因があるような気がしてなりません。
別の例で、prototype.jsを使って「文字の上にマウスをのせると別の文字が表示される」というのは成功しました。
ですから、Ricoのみが動いていないんだと思いますけど、確認の仕方が分かりません。
Ricoが動くようになる良い方法はありませんか?
必要であれば補足します。どうか宜しくお願いします。
No.1ベストアンサー
- 回答日時:
回答がないみたいなので…
Ricoって全然知らないけれど、
「Rico.Effect.FadeTo is null or not an object」ということは、呼出されて探しても見つからないということで、Effect.jsが読込まれていないのだと想像されます。
多分、その状態で alert(Rico)とかやってみればObjectを返すけれど、alert(Rico.Effect)だとundefinedなどになると思う。
検索してdemoページを見てみると、
http://dowdybrown.com/dbprod/rico2/examples/
↑のAnimationのページ
http://dowdybrown.com/dbprod/rico2/examples/clie …
まず、必要なモジュールを読込まなければならないみたい。
Effectを使うのであれば、 Rico.loadModule('Effect'); みたいな感じ。
>確認の仕方が分かりません。
これを実行すれば、alert(Rico.Effect)、alert(Rico.Effect.FadeTo)などとしてもObjectが返ってくるので、必要なものが読込まれているらしいことが分かると思います。
文法が書いてあるところが見つからないけれど、Effectを見ると引数の数が違うようですね。
こんなサイトがみつかりましたけれど、解説がほとんどないので良く分からない。
http://dowdybrown.com/dbprod/ricodocs/javascript/
まぁ、少なくともFadeToは
FadeTo(element, value) でelementは対象要素、valueはopcityの数値みたい。
ご提示のサンプルで、(↑)のdemoページの方法をそのまま真似して、
new Rico.Effect.Animator().play( new Rico.Effect.FadeTo($('img1'), 0), {steps:30, duration:1000});
みたいにすれば、一応、画像がフェードアウトしますけれど、これが正しい使い方なのかどうかは不明。
step、durationはアニメーションの時間と分割数らしく、数値を変えれば動作もそのように変わるみたい。
どこかに、ドキュメンテーションがあると思うのだけれど…
するどいです。
実は質問をした後にいろんな手を尽くしたのですが解決しなかったので
三年前くらいのRico.jsを読み込んでやっと解決しました。
最新版ではいけなかったようです。
三年前くらいに書かれた本だったので、もしやと思ったら正解でした。
プログラミングってこの辺がややこしいですね。
>alert(Rico.Effect)、alert(Rico.Effect.FadeTo)
勉強になります。
>new Rico.Effect.Animator().play( new Rico.Effect.FadeTo($('img1'), 0), {steps:30, duration:1000});
すみません、これはまだ試していません。
いろいろ試していただいて本当にありがとうございました!
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- JavaScript 入力フォームの javascript で メールアドレスの正規チェックをを行い、ボタンをクリックして 2 2022/04/27 16:06
- JavaScript javascriptのちょっとした動作不良(原因は突き止めたのですが) 1 2023/06/15 19:58
- HTML・CSS ボタンをクリックした時に、入力フォームのすぐ下部に、「入力欄が空白です」というテキストメッセージが表 1 2022/04/27 16:25
- JavaScript jqueryを使ったスムーススクロールのコードを書いたのですが、HTMLコード内にある、a butt 2 2022/04/14 10:59
- AJAX JavascriptからPHPへのAjax通信でnullが返ってくる 3 2022/08/03 22:00
- JavaScript ①入力フォーム→②確認表示画面→③送信完了画面のコードを書いているのです、 入力フォームから受け取っ 2 2022/05/10 16:45
- JavaScript switch文のswitch(n)の部分を複数の値にするか、if文に変えてほしいです。 1 2022/07/27 17:18
- JavaScript セレクトボックスを2つ設けて選択して初めてメッセを表示 1 2022/07/27 12:15
- JavaScript javascript作成してます。ラジオボタンで判定するコードを書いてます。 1 2023/07/18 11:03
- JavaScript HTMLでJavaScriptを使ってパスワードの強化判定のプログラムを作成しています。 一通り作っ 2 2022/10/19 01:41
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
ページ間で変数を保持したい
-
Firefoxでxml読み込み
-
HTMLとJavaScriptで作った表示...
-
自動的に連番生成したURLにリン...
-
return trueとreturn falseの用...
-
一つのページで二つのFormを別...
-
Excelで作ったhtmlファイルのサ...
-
正規表現で複数マッチ条件で悩...
-
javascriptでoptionタグを削除...
-
追加ボタンを押した際に ok ボ...
-
value内に変数を入れたい
-
【掲示板の機能】投稿時にサイ...
-
JavaScriptのfileオブジェクト...
-
jsで質問です。 ボタンが二つ存...
-
Selectボックスの一覧表示方法
-
出発駅A、到着駅Bを選択すると...
-
ボタンかリンクをクリックする...
-
contact-form7のプラグインでチ...
-
画面表示とともにtableの指定の...
-
プルダウン 項目が多いので先頭...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
TextBoxに半角数字以外を入れた...
-
HTMLとJavaScriptで作った表示...
-
tabindexの取得
-
VBscriptの配列変数をJavascrip...
-
プルダウンで選択された値を別...
-
フォームの内容でリンク先URLの...
-
テキストボックスに入力した色...
-
GetElementByIdがうまく取得で...
-
JavaScriptで作ったアプリが正...
-
jQueryのdatepickerの日付が選...
-
HTMLファイル同士での値渡し
-
マイナスなら赤字で表示したい...
-
VBSからjavascript
-
テキストエリアに履歴を残したい
-
どちらかひとつのテキストボッ...
-
ページ間で変数を保持したい
-
一部Enter無効化の方法を教えて...
-
javascriptのちょっとした動作...
-
Request.Form(key)の中身をクリ...
-
perl cgi文字化け解消方法と[1...
おすすめ情報