Jmpress.js (実際には jquery プラグインである impress.js のフォーク) を Drupal 7 に統合しようとしていますが、いくつかの問題が見つかりました。
まず、「$ は関数ではありません」というエラーが発生しました。他の場所で説明されているように、$ を使用する代わりに jQuery を直接指すことで解決できました。
しかし、認識された関数を取得したので、動作が非常に悪く (要素の配置ミス、キー ナビゲーションが一部のケースでしか動作しない)、さらに重要なことに、Firebug コンソールに多くのエラー メッセージが表示されます。
ここにそれらのいくつかを貼り付けます。
$(hashLink).on is not a function
(?)()jmpress.js?m2hr5f (línea 1491)
step = "init"
eventData = Object { settings={...}, current={...}, container=[1], más...}
(?)()jmpress.js?m2hr5f (línea 278)
idx = 2
callback = function()
nodeName()jquery.js?v=1.4.4 (línea 34)
j = [firstSlide(step, eventData), function(), function()]
s = function()
v = function()
callCallback()jmpress.js?m2hr5f (línea 277)
callbackName = "selectInitialStep"
element = "init"
eventData = Object { settings={...}, current={...}, container=[1], más...}
init()jmpress.js?m2hr5f (línea 666)
args = Object { beforeChange=[0], beforeInitStep=[0], initStep=[0], más...}
f()jmpress.js?m2hr5f (línea 800)
(?)()jmpress.js?m2hr5f (línea 810)
idx = 0
element = div#simple
nodeName()jquery.js?v=1.4.4 (línea 34)
j = [div#simple]
s = function()
v = div#simple
toArray()jquery.js?v=1.4.4 (línea 27)
j = function()
s = undefined
jmpress()jmpress.js?m2hr5f (línea 809)
method = undefined
diapos()17 (línea 105)
noConflict()jquery.js?v=1.4.4 (línea 30)
j = function()
inArray()jquery.js?v=1.4.4 (línea 38)
[Parar en este error]
$(hashLink).on("click"+current.hashNamespace, function(event) {
これを機能させるためにほぼ数日間戦ってきたので、今は少し迷っています(元のimpress.jsで試し始めましたが、jqueryプラグインの統合がより多くのように見えたので、それで降伏しました実行可能なオプション)。
また、コードをカプセル化しようとしました (これは jmpress.js を起動するための非常に小さなコードです)。
ヘルプ/アイデアをいただければ幸いです。ありがとう!
JMpress.js はヘッダーに適切にロードされており、公開されたノードの本体にこのコードを追加しています (コードが削除されないように、PHP コード フィルターをアクティブにします)。
<script type="text/javascript">
jQuery(function() {
jQuery('#simple').jmpress();
});
</script>