2017-07-17 31 views
0

私は実際のJavaScriptやjQueryの文盲で、以前作成した機能のトラブルシューティングを試みていました。これはFirefox上で動作しますが、Chromeで失敗します。画像をインポートしてからデータを切り抜きますが、画像がはっきりしない場合があり、非常に小さいため、ズーム機能を与える必要があります私はそれを使用し、それはどんなバグもなくFirefox上でうまくいきましたが、イメージはすべてchromeで表示されません。その下には、イメージのインポートとそのキャンバスの作成に関連するコードがあります。以前のデベロッパーはdivタグを使ってキャンバスを作成しましたが、divタグでズームと移動ができませんでした。 他の詳細が必要かどうか尋ねてください。次のようにChromeで画像のインポートが機能しない

$("#movingImage").empty(); 
//$("#movingImage").attr("src", image.src); 
$("#movingImage").append("<canvas id=\"canvas\">"); 
canvas = $("#canvas")[0]; 
context = canvas.getContext("2d"); 
canvas.width = image.width; 
canvas.height = image.height; 
context.drawImage(image, 0, 0); 

HTMLである:

<div id="views" > 
<img src="" id="movingImage" alt="" /> 
</div> 
+1

こんにちはビジェイであなたのimgノードを置き換えるためにreplaceWith()方法を試すことができますが、SOへようこそ! [良い質問をする方法](https://stackoverflow.com/help/how-to-ask)のドキュメントをご覧ください。私はあなたにクロムで起こっているエラーのより詳細な説明を表示するようにあなたを招待します。 –

+0

「firefoxで動作しますが、chromeで失敗しました」は適切な詳細を提供しません。問題をより詳細に説明し、関連するエラーメッセージを含めてください(コンソールでエラーをチェックしてください)。 – Marvin

+1

@ Marvin:編集 –

答えて

0

append()方法は、対象の子として指定された要素を挿入します。ただし、imgタグには子を入れることはできません。代わりにafterを試してみてください。同じ理由ではなく、empty()方法がここに動作するかどうか確認するために

...

あなたはまた、あなたの作成したキャンバス

+0

それはFirefoxでどうやって完璧に動作しますか? –

+0

これはいくつかの良い情報ですが、今は機能が動作するようになりましたが、機能は動作しますが、機能が5回実行されるたびに、新しいイメージを表示するたびに「空の」メソッドが機能しないため、最初の画像は5回、2番目の画像は4番目の画像、3番目の画像は3番目...というように表示されます。これが実現できる方法はありますか? –

+0

あなたは 'replaceWith()'を試しましたか?空の代わりに、おそらくあなたは['remove()'](https://api.jquery.com/remove/)メソッド – Tibo

関連する問題