我有一个在普通网页上工作正常的JQuery文件,但在DNN内部不起作用。 DNN在Host设置中指向最新版本的JQuery我有一个名为news的容器(news.css,news.ascx)和一个名为newsdata.ascx的容器。 我在模块中有这个代码来启动JQuery文件: $(function() { $(“#controller”).jFlow({ slides: “#slides”, width: “277px”, height: “150px”, duration: 250 }); }); 但没有任何反应。 我将代码放在正确的位置吗? 谢谢
我正在尝试使用javascript和jQuery为逻辑和节点构建一个自然语言处理机器人并表达为框架。 我发现了一个对我的项目非常有用的自然语言处理工具https://github.com/NaturalNode/natural,遗憾的是文档很稀疏,我只使用了几个星期的节点。 这是我在服务器端app.js上的代码 var natural = require(‘natural’), tokenizer = new natural.WordTokenizer(); stemmer.attach(); var express = require(“express”); app = express(); app.set(“view engine”, “ejs”); app.use(express.static(__dirname + ‘/public’)); 我在这里需要’自然’模块,但我无法使用文档中概述的方法。 var natural = require(‘natural’), tokenizer = new natural.WordTokenizer(); console.log(tokenizer.tokenize(“your dog has fleas.”)); // [ ‘your’, ‘dog’, ‘has’, ‘fleas’ ] 方法’tokenizer’未定义。 我已经对此做了大量研究,并研究了使用module.export并通过app.get函数为我正在使用的index.ejs页面传递变量,但到目前为止我还没有成功。 注意:我尝试使用这些方法的javascript文件位于public / javascript目录中,而app.js文件位于主项目目录中。 我试图直接在javascript文件中要求’自然’包我试图使用方法但是抛出错误说require是一个未定义的方法。 这是package.json文件: { “name”: “JSAIN”, […]
我正在创建一个模块,在我的主PHP文件中,我添加了对Javascript文件的引用。 在那个Javascript文件中,我在dom上做了一个jQuery调用,它执行一个Ajaxpost来获取div的初始内容。 它发布的URL是另一个PHP文件(gateway.php),它是我模块的一部分。 (此gateway.php调用远程服务器来获取内容。) 嗯,模块文件通常禁止直接访问。 我可以注释掉禁止直接访问的代码行。 即使这样做,出于某种原因,似乎我的gateway.php无法完全访问Joomla中的所有内容。 例如,gateway.php需要my helper.php文件。 我只是在做 require_once(dirname(__FILE__) . DS . ‘helper.php’); 据我所知,这是包含文件的标准方法。 但是,我收到的错误表明DS没有被翻译为Joomla中定义的值。 它将DS视为字符串值。 如果我改成它 require_once(dirname(__FILE__) . ‘/helper.php’); 然后我得到直接访问禁止错误。 知道这里发生了什么,或者在主PHP模块文件以外的文件中使用Joomla模块中的Ajax的正确方法?
我正在开发一个模块,它有一个带有一些AJAX代码的jQuery脚本。 ajax代码调用与jQuery脚本位于同一位置的php脚本。 我的问题是,AJAX在PHP脚本名称前面附加了域名,当然,我的脚本在该位置不存在,因此进程中断。 AJAX代码如下: $(document).ready( function(){ $.ajax({ url: “/testscript.core.php”, asych: false, success: function($data){ $(‘textarea#edit-simplechat-messages’).text( $data ); } }); } ); 以下是firebug中显示的链接: http://testsite.co.uk/testscript.core.php 同样,jQuery脚本和php脚本位于同一目录中。 我认为在我的php脚本名称之前的正斜杠将消除域名,但它不起作用。
我正在寻找一个解决方案来推出jquery版本,Drupal本身也包括在内。 它是旧版本。 实际上没有问题 – 但是一个:DI使用.animate()函数,队列为false,没有这个属性(因为这个属性是jquery 1.7中的.animate()addet),它不是我想要的动画。 代码是: //When mouse rolls over $(“#login”).bind(‘mouseover mouseenter’,function(){ $(“#logo”).stop().delay(500).animate({top:’-44px’},{queue:false, duration:600, easing: ‘swing’}) $(“#login”).stop().animate({top:’89px’},{queue:false, duration:600, easing: ‘easeOutBounce’}) }); //When mouse is removed $(“#login”).bind(‘mouseout mouseleave’,function(){ $(“#logo”).stop().animate({top:’6px’},{queue:false, duration:600, easing: ‘easeOutBounce’}) $(“#login”).stop().animate({top:’40px’},{queue:false, duration:600, easing: ‘swing’}) }); 也许你可以帮我找到解决方案? 问题,为什么我要排除我用于此(1.8.3)的jquery版本是一个Drupal模块没有显示wysiwyg(CKEditor),当jquery 1.8.3被包含在另外,并且不幸的是我无法替换jquery jquery 1.8.3的核心版本:(
我试图找到一种方法,它将为我提供在Namespace / Unit中包装代码的最优雅方式。 例如Google Maps API的var a = Google.Maps.Foo(); ,我认为看起来很干净。 我希望它包含 jQuery No Conflict $符号(如果这是正确的术语)。 到目前为止我很喜欢: // Top level container for sub objects var myApp = myApp || {}; // An object to be held in myApp (function( skillet, $, undefined ) { //Private Property var isHot = true; //Public Property skillet.ingredient = “Bacon Strips”; […]
我想知道几年后人们怎么想用inheritance模块模式 – esque构造函数模式和没有正常的原型inheritance。 为什么程序员不为非单例js类使用模块模式? 对我来说,优点是: 非常明确的公共和私人范围(易于理解代码和API) 无需在回调中通过$ .proxy(fn,this)跟踪’this’指针 不再使用事件处理程序等等= =等等。每当我看到’this’时,我知道它是传递给回调的上下文,它不是我跟踪以了解我的对象实例的东西。 缺点: 小性能退化 道格·克罗克福德可能有“手指摇摆”的风险吗? 考虑一下(只需在任何js控制台中运行) var Animal = function () { var publicApi = { Name: ‘Generic’, IsAnimal: true, AnimalHello: animalHello, GetHelloCount:getHelloCount }; var helloCount = 0; function animalHello() { helloCount++; console.log(publicApi.Name + ‘ says hello (animalHello)’); } function getHelloCount(callback) { callback.call(helloCount); } return publicApi; }; […]
我在我的html页面中有一个类名=“flyer”和href =“MY_HREF”的链接。 当用户点击链接时,我想加载一个具有特定ID的“自定义html”模块。 你能告诉我MY_HREF的语法怎么样? 例如http://www.mywebsite/com_custom/id=ID.html ??? 下面我有ajax调用: jQuery.ajaxSetup ({ dataType: “html”, cache: false }); var portfolioItemURL = “”; jQuery(“.flyer”).click( function(){ portfolioItemURL = jQuery(this).find(“a”).attr(“MY_HREF”) + ‘?tmpl=component&type=raw’; jQuery(“#ajaxCallContainer”).load(portfolioItemURL); } );
我希望通过将其分成不同的文件并使每个文件成为“子”命名空间来使我的javascript更加模块化。 subA.js if(typeof ex == “undefined”) { var ex = {}; } ex.subA = function() { //all functions of subA here } 对于subB等也一样 目前我有1个文件, ex.js var ex = (function() { //private vars/funcs return { //public vars/funcs } })(); 看起来我应该将我的大多数函数移动到subA.js和subB.js,但在开始时仍然包含ex.js,之后使用subA.js和subB.js。 我有很多问题。 我很难记住我是如何创建初始命名空间文件ex.js. 看起来匿名函数最初是为了使所有东西都是私有的,但我不记得为什么它需要括在括号中然后用();直接执行(); 在末尾。 从q1开始,我的子文件是否应该与ex.js的格式相同,即,将anon函数包含在括号中并立即执行? 看起来子文件只能访问ex的公共函数,这是真的吗? 如果是,我如何允许我的子文件访问私有函数? 在我的HTML文件中,在我的document.ready函数(jQuery)中,我应该将ex初始化为变量还是可以通过继续单独调用每个函数 $(document).ready(function(){ ex.doSomething(); ex.doSomethingElse(); } 这两者有区别吗? 我认为当包含ex.js时,会立即创建一个全局变量ex(由于匿名函数被立即执行),所以我不需要在document.ready中重新定义它。 subA.js中的第一个if语句与var ex […]
我第一次在项目中使用requirejs。 我正在一个已经有很多Javascript的环境中工作,我正在寻找干净的方法来介绍我自己的代码。 我遇到的问题是我似乎无法找到我可以加载的jQuery模块,它不会破坏现有的jQuery。 我很惊讶即使require-jquery.js引入了jQuery的全局版本。 有没有办法加载jQuery作为模块而不引入任何全局变量?