私はJmpress.js(実際にjqueryプラグインであるimpress.jsのフォーク)をDrupal 7に統合しようとしています。Drupal 7のJavascript:JMpress.jsを使用したときの競合
elsewhereで説明されているように、まず$を使用する代わりに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を起動するための本当に小さなコードである)encapsulating my codeを試してみましたが、私は何か間違ったことをしたと思います:)
すべてのヘルプ/アイデアがします感謝する。ありがとう!
JMpress.jsが正しくヘッダにロードされ、そしてIは、(コードが剥離されないように、PHPコードと、アクティブフィルタ)公開されたノードの本体にこのコードを追加している:
<script type="text/javascript">
jQuery(function() {
jQuery('#simple').jmpress();
});
</script>
**ありがとうございました!**この問題はかなりまっすぐに解決されました。 jsコードの他の部分のエラーを防ぐために、私はその正確なビューに対してのみ_js_alterを使用しようとします。 – versvs