0

jQuery コードから JavaScript 関数を呼び出そうとしましたが、機能しません。

JavaScript 関数:

<script type="text/javascript">
function showonlyone(thechosenone) {
    var newboxes = document.getElementsByTagName("a");
    for (var x=0; x<newboxes.length; x++) {
        name = newboxes[x].getAttribute("class");
        if (name == 'newboxes') {
            if (newboxes[x].id == thechosenone) {
                newboxes[x].style.display = 'block';
            }
            else {
                newboxes[x].style.display = 'none';
            }
        }
    }
}
</script>

jQuery コード:

<script type="text/javascript">    
jQuery(document).ready(function ($) {
    $("#img2").on("click", function() { 
        event.preventDefault();
        showonlyone("im2");            
    });
});
</script>
4

2 に答える 2

3
event.preventDefault();

おそらくただのjsエラー、

$("#img2").on("click", function(event){
 event.preventDefault();
showonlyone("im2");

    });

とにかく、すでに開始している場合は、すべてのコードを jquery で記述することをお勧めします。

于 2013-06-16T19:44:00.643 に答える
2

jQuery が既に行っているように、「渡す必要がeventfunctionある」ということではありません。

ただし、次のように参照できるように、引数に名前eventを付ける必要があります。

$("#img2").on("click", function(event){
    //                          ^^^^^
    event.preventDefault():
    // etc.
});

JavaScript では、eventのようなキーワードではありませんthis。歴史的に、これはグローバル変数でしたが、そのように標準化されていません。

于 2013-06-16T19:56:44.017 に答える