2017-08-01 4 views
0

私はこのSVGアニメーションを持っており、IDをクリックすると警告がアクティブになるはずです。残念ながら何も起こらず、コンソールはこのコードに関するエラーを表示しません。jQuery onclick SVG IDが警告を表示しない

<script> 
    $(function() { 
     $(".overlay #medical").on('click', function() { 
      console.log('testing - click'); 
     }); 
    }); 
</script> 

enter image description here 任意の提案をどのようにこの作業を取得するには?

+0

は、あなたが "#medical" ''の代わりにこのセレクタを使用しようとしたことがありますが、代わりにネイティブのJavaScriptを使用する必要がありますか? (私はJQueryがidsのために最適化すると思うが、私はsurではない) – Vivick

+0

jQueryのオーバーラルと他のIDの動作がうまく動作するので、SVG関連の問題と思われる。 – user3615851

+0

body.click関数を設定し、イベントを確認してください、あなたのsvgボタンをクリックしたときに、ターゲットに何があるかを確認してください – noitse

答えて

0

次のコードで解決:

var anim; 
    var elem = document.getElementById('bodymovin') 
    var animData = { 
     container: elem, 
     renderer: 'svg', 
     loop: true, 
     autoplay: true, 
     rendererSettings: { 
      progressiveLoad: false 
     }, 
     path: 'data_large.json' 
    }; 
    anim = bodymovin.loadAnimation(animData); 

    var lookingForLinks = true; 
    setTimeout(addLinksToSvgAnim, 1000); 

    function addLinksToSvgAnim() { 
     if (lookingForLinks) { 
      let medicalG = document.getElementById("medical"); 
      let foodG = document.getElementById("food"); 
      let collabG = document.getElementById("collab"); 
      let volunteersG = document.getElementById("volunteers"); 
      let projectsG = document.getElementById("projects"); 

      if (medicalG && foodG && volunteersG && projectsG) { 
       lookingForLinks = false; 
       medicalG.addEventListener("click", function() { 
        window.location = window.location.protocol + "//" + window.location.hostname + "/medical-aid"; 
       }); 
       foodG.addEventListener("click", function() { 
        window.location = window.location.protocol + "//" + window.location.hostname + "/humanitarian-aid"; 
       }); 
       collabG.addEventListener("click", function() { 
        window.location = window.location.protocol + "//" + window.location.hostname + "/our-story/partners"; 
       }); 
       volunteersG.addEventListener("click", function() { 
        window.location = window.location.protocol + "//" + window.location.hostname + "/get-involved"; 
       }); 
       projectsG.addEventListener("click", function() { 
        window.location = window.location.protocol + "//" + window.location.hostname + "/bringhope-projects"; 
       }); 
      } 
      setTimeout(addLinksToSvgAnim, 1000); 
     } 
    } 
0

jQueryは(現在)SVGを完全にサポートしていません。

document.getElementById('medical').addEventListener('click',function() { 
    console.log('testing - click'); 
},false); 
+0

こんにちは、感謝;

  • 11. 警告を表示しているTox
  • 12. Webpackはブラウザコンソールでeslintの警告を表示しない
  • 13. アクティビティonBackPressの警告ダイアログが表示されない
  • 14. MSTest.exeがアセンブリまたはモジュールに警告を表示しない
  • 15. Apple Reachabilityが警告を表示しない
  • 16. アンドロイドの警告ダイアログが表示されない
  • 17. 甘い警告。警告ボックスにカウントダウンを表示
  • 18. Android:警告ダイアログが表示されない
  • 19. scalajs-reactで警告を表示しない
  • 20. ブートストラップ警告のクローズボタンが表示されない
  • 21. パスワードが一致しない場合のイオン警告表示エラー
  • 22. 編集後に警告メッセージが表示されなくなる
  • 23. window.openで警告メッセージを表示しない
  • 24. WPF:素敵な警告を表示
  • 25. .NET Core 2.0 EF7データアノテーションに警告が表示されない
  • 26. Onclickリスナメソッド内の警告ダイアログ
  • 27. onClickホームキーディスプレイアンドロイドの警告ボックス
  • 28. 警告が表示されないのはなぜですか。
  • 29. マニュアルで警告が表示されていませんが、自動で警告が表示されます
  • 30. jqueryコード - 警告メッセージが表示されません