1

私の jsFiddle をチェックしてください: http://jsfiddle.net/KevinOrin/zuFae/

コードはそこで正常に動作しますが、私がコーディングしている Drupal サイトでは動作しません: http://gossiptalk.info/users/gossiptalk

Drupal DOM 出力から直接 html をコピーしましたが、js をどこに置いても機能しません。そして、はい、jQuery ライブラリをロードしています。何かご意見は?

$(document).on("click", function () {
var _href = $("#map-addr").attr("href");
var _addr = $("#map-addr div.field-item").text();
$("#map-addr").attr("href", _href + _addr);

});

4

3 に答える 3

0

drupal を使用しているため、jQuery オブジェクトを参照しなくなると思います。の代わりに使用してください。 jQuery.noConflict$jQuery$

jQuery(document).on("click", function () {
    var _href = jQuery("#map-addr").attr("href");
    var _addr = jQuery("#map-addr div.field-item").text();
    jQuery("#map-addr").attr("href", _href + _addr);
});
于 2013-04-28T03:44:05.130 に答える
0

$ をそれ自体に対してローカルにし、jQuery に出力するため、これを使用しても、その内部で慣れているように jQuery を記述できるはずです。通常、document.ready と同じように機能します。

(function($){
    $(document).on("click", function () {
        var _href = $("#map-addr").attr("href");
        var _addr = $("#map-addr div.field-item").text();
        $("#map-addr").attr("href", _href + _addr);
    });
})(jQuery);
于 2013-04-28T03:47:21.873 に答える
0

コードで $ 変数の代わりに 'jQuery' 変数を使用することもできます。

参照: http://drupal.org/node/171213

http://drupal.org/update/modules/6/7#javascript_compatibility

var jq = jQuery.noConflict();
jq(document).on("click", function () {
  var _href = jq("#map-addr").attr("href");
  var _addr = jq("#map-addr div.field-item").text();
  jq("#map-addr").attr("href", _href + _addr);
});
于 2013-04-28T03:47:39.037 に答える