Tag: scope

Javascript Closure -Local变量嵌套函数

我试图使用在函数P中定义的变量x,其值我试图在另一个函数中设置。 它总是未定义。 我试着用我的头脑来使用闭合,但它只是让我失望了。 它不会给我一个字符串而不是一个对象。 逻辑如下。 function P(i){ var x; if(i!=null){ //this pulls the data correctly and i could see it in network tab response. var dataFromQuery=widgets.DATA.create({ url:”abc/cde”, queryTemplate :”/query”+i+ “?” }); //we query the data and set the value as per the logic. dataFromQuery.query(function(data){ if(data[0].name){ x=data[0].name; // this stays undefined , and i understand this […]

将参数传递给KeyDown

如何从jquery将参数传递给keydown方法,因为每当我使用其他地方定义的变量时,它返回undefined。 我假设它是因为#target是窗口,因此它不在范围内,但即使这样我也无法将key.which()与外部参数进行比较,然后将其分配给另一个属性。 例: var a = 38; var b = 0; $(document).keydown(function(e){ var key = e.which; if (a==key) b=key; }); console.log(a+””+b); 每当我尝试沿同一行做某事时它返回38 0,我将其解释为它不在范围内并且未定义(也因为如果我记录b它在keydown func中打印未定义)? 我怎么能通过?

jQuery中getJSON的范围

在使用getJSON时,我在尝试管理范围时遇到了一些麻烦。 因此,在HTML页面上,我有一个无序列表,用于填充JSON文件中的列表项。 该列表是旋转木马的标记。 HTML: JS: grabJSON : function() { $.getJSON(‘file.json’, function(data) { var items = []; $.each(data.foo, function(k, v) { items.push(” + v.bar + ”); } $(‘ul.carousel’).append(items.join(”)); // carousel action here $(‘ul.carousel’).carouselFunction({ // carousel options here }); }); } 目前,我必须将carousel函数放在getJSON函数中。 如果我设置另一个function来设置轮播,我将失去getJSON中的范围。 什么是打破这个的首选方法,所以我可以有一个从getJSON调用的setupCarousel : function() ? 通常,如果我想从对象中的另一个函数调用一个函数,我可以去this.setupCarousel() ,但是对于嵌套作用域,我不知道如何处理它。 此外,在getJSON函数之外,我无权访问任何附加的元素。 所以我可以访问ul,但不能访问从getJSON添加它们时创建的任何列表项。

Javascript – 值存在,然后消失,然后再次出现?

这让我疯了。 我也无法通过Firebug来解决这个问题。 有人可以解释一下这里发生了什么吗? 基本上我有一个传入的文本文件,其中每行包含一个管道分隔的记录。 我将它们拆分为一个字符串数组数组,以便以后在自动完成文本框中使用。 代码如下: $(function () { var rawData = new Array(); $.get(“/sample.txt”, function (data) { var raw = data.split(‘\n’); for (var i = 0; i < raw.length; i++) { rawData.push(raw[i].split('|')); }; alert(rawData); // 1st sanity check } ); alert(rawData); // 2nd sanity check alert(rawData); // 3rd sanity check 由于某种原因,第一次完整性检查工作正常 – 它显示我所期望的所有数据。 第二个显示rawData为空…但第三个显示所有数据。 […]

试图添加多个D3图表

我正在试图弄清楚如何在我的网站上包含2个或更多图表。 我目前正在使用Area Graph和Pie Graph 。 如果我禁用其中一个,那么另一个工作正常,但当我尝试同时使用它们时,它会停止工作。 面积图的JS代码 var margin = { top: 0, right: 0, bottom: 30, left: 50 }, width = 670 – margin.left – margin.right, height = 326 – margin.top – margin.bottom; var parseDate = d3.time.format(“%d-%b-%y”).parse; var x = d3.time.scale() .range([0, width]); var y = d3.scale.linear() .range([height, 0]); var xAxis = d3.svg.axis() .scale(x) […]