出于某种原因, Magento附带的原型框架(或其他JavaScript代码)正在取代标准的控制台function,所以我无法debugging任何东西。 在JavaScript控制台console写下我得到以下输出: > console Object assert: function () {} count: function () {} debug: function () {} dir: function () {} dirxml: function () {} error: function () {} group: function () {} groupEnd: function () {} info: function () {} log: function () {} profile: function () {} profileEnd: function () {} time: […]
在magento网站上使用bootstrap 3&prototype.js时,我遇到了一个问题。 基本上,如果你点击下拉菜单(我们的产品),然后点击背景,下拉菜单(我们的产品)消失(prototype.js添加“display:none;”到li)。 这是一个问题的演示: http : //ridge.mydevelopmentserver.com/contact.html 您可以看到,下拉菜单的工作方式应该不会在下面的链接中包含prototype.js: http : //ridge.mydevelopmentserver.com/ 有没有其他人遇到这个问题之前,或有冲突的可能的解决办法? 容易修正: 只要用这个引导友好的replaceMagento的prototype.js文件: https://raw.github.com/zikula/core/079df47e7c1f536a0d9eea2993ae19768e1f0554/src/javascript/ajax/original_uncompressed/prototype.js 您可以在prototype.js文件中看到修改bootstrap问题的更改: https://github.com/zikula/core/commit/079df47e7c1f536a0d9eea2993ae19768e1f0554 注意:在prototype.js之前,jQuery必须包含在你的magento皮肤中。例子: <script type="text/javascript" src="/js/jquery.js"></script> <script type="text/javascript" src="/js/prototype/prototype.js"></script> <script type="text/javascript" src="/js/lib/ccard.js"></script> <script type="text/javascript" src="/js/prototype/validation.js"></script> <script type="text/javascript" src="/js/scriptaculous/builder.js"></script> <script type="text/javascript" src="/js/scriptaculous/effects.js"></script> <script type="text/javascript" src="/js/scriptaculous/dragdrop.js"></script> <script type="text/javascript" src="/js/scriptaculous/controls.js"></script> <script type="text/javascript" src="/js/scriptaculous/slider.js"></script> <script type="text/javascript" src="/js/varien/js.js"></script> <script type="text/javascript" src="/js/varien/form.js"></script> <script type="text/javascript" src="/js/varien/menu.js"></script> <script […]
我不想打开另一个“ 另一个Js VS Js ”的线程。 我想,最终Prototype和jQuery都是JS,并且具有几乎相同的方法和function,并且对于相同的任务需要几乎相同的代码行。 对于一个真正的富互联网应用程序 , 真正的优势是什么,Prototype和jQuery的弱点是什么?
我目前正在为我工作的公司开发内部销售应用程序,而且我有一个允许用户更改送货地址的表单。 现在我认为它看起来会更好,如果我用于主要地址细节的textarea只占用文本的区域,并且在文本改变时自动resize。 这是当前的截图。 有任何想法吗? @克里斯 好点,但是我想要调整它的原因。 我想要占用的区域是其中包含的信息的区域。 正如你在屏幕截图中看到的那样,如果我有一个固定的textarea,它会占用垂直空间的一大笔费用。 我可以减less字体,但我需要的地址大而可读。 现在我可以减小文本区域的大小,但是我有一个地址线需要3或4(一个需要5)行的人有问题。 需要让用户使用滚动条是一个主要的禁忌。 我想我应该更具体一点。 我在垂直resize之后,宽度并不重要。 唯一的问题是,当窗口宽度太小时(正如你在屏幕截图中看到的那样),ISO号码(大“1”)被推到地址下。 这不是要有一个gimick; 这是关于有一个用户可以编辑的文本字段,不会占用不必要的空间,但会显示其中的所有文本。 虽然如果有人想出另外一种方法来解决这个问题,我也是这样认为的。 我修改了一些代码,因为它有点奇怪。 我把它改成在关键字上激活,因为它不考虑刚input的字符。 resizeIt = function() { var str = $('iso_address').value; var cols = $('iso_address').cols; var linecount = 0; $A(str.split("\n")).each(function(l) { linecount += 1 + Math.floor(l.length / cols); // Take into account long lines }) $('iso_address').rows = linecount; };
我想知道在rails视图中传递variables到JavaScript函数的最佳做法是什么。 现在我正在做一些事情: <% content_for :javascript do %> <script type="text/javascript"> Event.observe(window, 'load', function(){ js_function(<%= @ruby_array.to_json %>, <%= @ruby_var %>); )} </script> <% end %> 这是正确的方式去呢?
我在HTML页面中使用jQuery自动完成插件,我也有一个使用原型的手风琴菜单。 他们都完全分开工作,但当我试图在单个页面中实现这两个组件时,我得到一个我一直无法理解的错误。 未捕获的exception:[exception…]组件返回失败代码:0x80004005(NS_ERROR_FAILURE)[nsIDOMViewCSS.getComputedStyle]“nsresult:”0x80004005(NS_ERROR_FAILURE)“位置:”JS框架::文件:/ / / C:/ Documents and Settings /Administrator/Desktop/website/js/jquery-1.2.6.pack.js :: anonymous :: line 11“data:no] 我发现与jQuery冲突的文件是手风琴菜单使用的“effects.js”。 我试图用更新的版本replace这个文件,但更新似乎打破了手风琴的行为。 我的猜测是手风琴中使用的'effects.js'文件被修改以获得手风琴演示输出。 我也尝试使用重写的方法jQuery需要避免与其他库冲突,并没有工作。 我从stickmanlabs.com获得了手风琴演示。 jQuery AutoComplete可以从jQuery站点获得。 有没有人遇到过这个问题?
我正在尝试使用HTMLstringdynamic创build一个元素。 这是一个使用原型和DOM的简单示例: // HTML string var s = '<li>text</li>'; // DOM var el1 = document.createElement(s); // prototype var el2 = new Element(s); $('mylist').appendChild(el1); $('mylist').appendChild(el2); 两种方法都将一个空的listitem插入到列表中。 我知道使用原型的元素作为构造函数需要一个tagName和一个可选的属性参数,但我想它可能让我传入一个HTMLstring。 但是, MSDN指出:“你也可以通过使用方法参数的HTMLstring来指定createElement方法中的所有属性”…所以我不确定是什么问题。 是的,我知道我可以在jQuery中轻松地做到这一点,不幸的是,我们没有使用jQuery。 我在这里俯瞰真正简单的东西吗?
在Prototype中,我可以用这个代码显示一个“loading …”图像: var myAjax = new Ajax.Request( url, {method: 'get', parameters: pars, onLoading: showLoad, onComplete: showResponse} ); function showLoad () { … } 在jQuery中 ,我可以加载一个服务器页面到这个元素: $('#message').load('index.php?pg=ajaxFlashcard'); 但是如何像我在Prototype中那样附加一个加载微调器到这个命令?
我使用原型做我的AJAX开发,我使用这样的代码: somefunction: function(){ var result = ""; myAjax = new Ajax.Request(postUrl, { method: 'post', postBody: postData, contentType: 'application/x-www-form-urlencoded', onComplete: function(transport){ if (200 == transport.status) { result = transport.responseText; } } }); return result; } 我发现“结果”是一个空string。 所以,我试过这个: somefunction: function(){ var result = ""; myAjax = new Ajax.Request(postUrl, { method: 'post', postBody: postData, contentType: 'application/x-www-form-urlencoded', onComplete: function(transport){ […]