gpt4 book ai didi

javascript - 使用 Drupal_add_js/Jquery 评估 Node 时未定义

转载 作者:行者123 更新时间:2023-11-30 06:28:12 24 4
gpt4 key购买 nike

我是 Jquery 的新手,但不是 JS、PHP、Drupal 等的新手。甚至是 stackoverflow 的新手。

为了刷新网络摄像头图像,我使用一个简单的 HTML 文件进行测试,如下所示:

var URL = "http://webcam.tld/live.jpg";
var QueryString = "?random=RANDOM_NUMBER"; // simplified
$("#webcam").attr( "src", URL + QueryString ) ;

这行得通!!!

在 Drupal 7 中,JS 文件包含在:

<?php
drupal_add_js( 'sites/site_1/themes/t1/js/webcams.js' , 'file' );
print '<img id="webcam" src="http://webcam.tld/live.jpg" />';
?>

外部 JS 文件 'webcams.js' 听起来像这样:

jQuery(document).ready( function(){
var URL = "http://webcam.tld/live.jpg";
var QueryString = "?random=RANDOM_NUMBER";
// This gives TypeError (see below)
$("#webcam").attr( "src" , URL + QueryString );
// THIS WORKS
alert( "Hello" );
} ) ;

我收到以下错误消息:

TypeError: 'undefined' 不是一个函数(评估 '$("#webcam")')

我做错了什么?

感谢您的提示和关注。汉斯

最佳答案

在 Drupal7 中,您需要将 jQuery 代码包装到函数中,如下所示:

 // We define a function that takes one parameter named $.
(function ($) {
// Here is our code
// ...
}(jQuery));

或者,您可以在所有地方使用完整的“jQuery”而不是“$”。您可以在 https://drupal.org/node/171213 上阅读更多内容另外,我建议你使用 Drupal 行为(你想要遵循 Drupal 标准) http://blog.amazeelabs.com/en/comment/510193 - 关于 drupal 行为。

关于javascript - 使用 Drupal_add_js/Jquery 评估 Node 时未定义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19638031/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com