如果你雇用一个javascript开发人员,你会期望他们知道jquery吗?
我本周刚刚开始使用堆栈溢出,并且知道jquery领导了这个包,但直到我注意到MooTools(我最喜欢的)有59个问题而jquery有4000个以上时才意识到它的程度.(当然,一个好的统计学家可以归因于jquery对它的可用性有更多的问题,而不是它的受欢迎程度 - 但我们知道这是错误的)
然后我开始注意到很多人发布带有"javascript"标签的问题,但是当他们的代码的每一行都是jquery时都不是"jquery" - 就像它是事实上的javascript 2.0,或者他们甚至没有意识到他们不是'写"javascript"而不是jquery.
无论如何,我问这个是因为我一直都是自由职业者,可以在项目中使用我想要的任何框架.但最近我被推荐为几家公司的前端开发人员.我想要了解社区的期望,知道我是否应该暂停一些其他个人项目以获取jquery,然后再探讨可能提供的职位.
使用Mootools,如果我附加一个更改事件监听器,<select>
我如何访问所选的选项.我想要实际的元素,而不仅仅是价值.
$('select').addEvent('change',function(event) {
//??
});
Run Code Online (Sandbox Code Playgroud) 我想在页面加载时专注于PhoneGap应用程序中的文本输入.我已经尝试过MooTools版本$('entry').focus();
以及document.getElementById('entry').focus()
DOM准备好了.
当在普通的Web浏览器中查看HTML页面时,这可以正常工作,但在运行PhoneGap的iPhone模拟器中,它不起作用.
有没有办法专注于强制虚拟键盘出现的iPhone的表单字段?
我喜欢写我的代码苗条和性感(在性能和内存方面),我正在使用Mootools,并想知道我是否以正确的方式使用它,你也可以告诉我如何测试我的代码来找到它我正在寻找自己的答案.
//First we create a class like so:
var FirstClass = new Class {(
'someFunc': function() { /* do stuff */ }
})
//Now this class uses first class with "Implements"
var SecondClass = new Class ({
'Implements': [FirstClass, SomeOtherClass, SomeOtherOtherClass],
'iAlsoDoStuff': function() {/*do stuff */}
})
// finally the class that Extends second class
var ThirdClass = new Class ({
'Extends': SecondClass,
'takeOverTheWorld': function() {/*code to win lottery */}
})
Run Code Online (Sandbox Code Playgroud)
如何判断是否每次扩展secondclass时它都不会创建Implemented类的新副本?我正在做我上面做的事情的原因是为每个需要它的类扩展SecondClass - 静态地这样做,而第二个类不能扩展超过一个类因此我使用Implements.
我在firefox上检索确切的css属性值(在'%'中)时遇到问题.
假设我们有这个非常简单的标记:
<div id="box">box</div>
Run Code Online (Sandbox Code Playgroud)
这个css:
#box{
width:200px;
height:200px;
left:10%;
position:absolute;
background:red;
}
Run Code Online (Sandbox Code Playgroud)
而我想找回左侧位置被JS(在"%")
使用mootools很简单(演示 - > http://jsfiddle.net/steweb/AWdzB/):
var left = $('box').getStyle('left');
Run Code Online (Sandbox Code Playgroud)
或jQuery(演示 - > http://jsfiddle.net/steweb/RaVyU/):
var left = $('#box').css('left');
Run Code Online (Sandbox Code Playgroud)
或者通过普通的js(演示 - > http://jsfiddle.net/steweb/tUAKA/):
function getStyle(el,styleProp){ //from ppk's quirksmode
var x = document.getElementById(el);
if (x.currentStyle)
var y = x.currentStyle[styleProp];
else if (window.getComputedStyle)
var y = document.defaultView.getComputedStyle(x,null).getPropertyValue(styleProp);
return y;
}
var left = getStyle('box','left');
Run Code Online (Sandbox Code Playgroud)
但是如果你在firefox(8.0.1)上尝试它,你会发现结果不正确(应该是10%,但它是91px).问题是:这个较新版本的Firefox有没有错误?有谁知道这是一个已知的错误?难道我做错了什么?
谢谢 :)
更新:我也尝试过较旧的firefox版本,并且它不正确(它总是返回px值)..为了完整性,它在IE上正常工作
我们的Mootoolers和Prototypers(本网站上很少有人)通常带有一个方便的工具箱,我们创建(或借用)我们在本机javascript对象上实现的功能,使我们的生活更轻松.我希望得到一个非常有用的原型函数列表,但只能在本机对象上实现(即String.implement({...
在mootools中).
那么,你最喜欢的是什么?
PS:我包括mootools和原型,因为为一个库编写的函数很容易移植到另一个库.
PPS:我知道/反对原型javascript对象原型的论据,我宁愿在这里避免讨论.
问题1:给定
<input type="radio" name="foo" value="1" />
<input type="radio" name="foo" value="2" />
<input type="radio" name="foo" value="3" />
Run Code Online (Sandbox Code Playgroud)
在Mootools中,假设单击了第二个单选按钮,如何在输入"foo"时返回"2".
问题2 :(它是相关的) - 给定类似的复选框输入,如何返回已检查值的数组或逗号分隔列表?
我想通过Request.JSON提交这些输入的值,并将其作为GET参数传递.
每个MooTools开发人员都应该注意MooTools隐藏或模糊的功能是什么?
请回答每个答案的一个功能.
我正在将mootools从1.3.2更新到1.4.1.我看到了一个奇怪的变化.由此
for (var i = 0, l = this.length; i < l; i++){....
Run Code Online (Sandbox Code Playgroud)
对此
for (var i = 0, l = this.length >>> 0; i < l; i++){
Run Code Online (Sandbox Code Playgroud)
以这种方式使用的">>>"运算符如何提高性能?你怎么看待这件事?
任何人都可以告诉我为什么这可以在旧版本的jQuery(例如1.4.2)中工作,但如果你切换到更高版本,例如(1.6 +)它停止工作?
http://jsfiddle.net/nmvf6/1194/
$(function(){
$('#my_button').click(function(){
var unitName = "Unit2";
$('.assUnit').find('option[text="'+unitName+'"]').remove();
});
});
Run Code Online (Sandbox Code Playgroud)
我已经在控制台中检查了更高版本的错误输出,并且在我加载我的脚本并且能够单击按钮之前,页面加载上似乎发生了错误.
当我将版本更改为1.8.0并运行页面时,我的Opera脚本控制台中出现此错误:
http://s15.postimage.org/5yhodvirt/ess.png
这似乎是在一个"mootools"文件..但我没有选择mootools,我选择了jQuery 1.8.0
:/
谢谢.
mootools ×10
javascript ×8
jquery ×3
class ×1
cordova ×1
css ×1
extends ×1
focus ×1
for-loop ×1
forms ×1
frameworks ×1
html-select ×1
iphone ×1
performance ×1
prototypejs ×1