jquery 学习笔记

1。应用class或者ID选择一项

应用id :$(‘#myid’)

应用Class:$(‘.mycssClass’)

选择的一个元素可能被赋值给一个变量如下:

var myDivElement = $(‘#myDivId’);
 

var myValue = $(‘#myDivId’).val();    //获取该id的值

$(‘myDivId’).value(“hell word!”);       //给myDivId赋值

2。如何测试一个元素具有末一个特定的类

除了合适的选择器,你们能应用is()方法

例如:if ( $(‘#myDiv’).is(‘.pretty’) )
               $(‘#myDiv’).show(); 
 

注意is()方法也可以测试其他的事情,例如,可以测试一个元素是否具有Hidden属性

if ( $(‘#myDiv’).is(‘:hidden’) )
   $(‘#myDiv’).show();
 

怎样判断一个元素是否存在

能够应用选择器返回的jquery集合的length属性,判断一个元素是否存在

if ( $('#myDiv').length )
  $('#myDiv').show();
注:没有必要每次都判断一个元素是否存在,如下的代码当该元素存在时将显示该项,如果不存在
将不进行任何操作,不会有错误
     $('#myDiv').show();

怎样确定一个双向元素的状态
可以应用:visible 或者:hidden 选择器检查一个元素的状态
 var isVisible = $('#myDiv').is(':visible');
 var isHidden = $('#myDiv').is(':hidden');
如果只是根据可视性进行操作,只需要在选择表达式中包括:hidden后者 :visible属性,例如:
$('#myDiv:visible').animate({left: '+=200px'}, 'slow');

如何选择ID上具有特殊字符的元素
如,一些产生唯一ID的框架经常能够产生特殊的字符(如 .或着[]),这些字符在css中具有特殊的
意思
非常感谢,jQuery具有一个工作区,允许下面这样做:
// Does not work
 $("#some.id")

 // Works!
 $("#some\\.id")
另外一个例子:
// Does not work
 $("#some[id]")

 // Works!
 $("#some\\[id\\]")

怎么样激活或者关闭一个元素
 可以disable /enable 一个元素通过设置disabled属性到一个disabled(不可用)或者""(可用)
 结果看上去像这样
 // Disable #x
 $("#x").attr("disabled","disabled");
 // Enable #x
 $("#x").removeAttr("disabled");

 怎样选中/取消选中

// Check #x
 $("#c").attr("checked", "checked");
 // Uncheck #x
 $("#c").attr("checked","");

怎样后取一个select 选项的文本
$("select#myselect").val(); 获取选项的值
$("#myselect option:selected").text();获取被选中的项的文本

为什么调用了ajax请求后我的事件停止工作了呢?

通常当我们应用$('a').click(fn) 给所有的link添加click事件你会发现当
应用ajax请求加载新内容到页面的时候,事件将不再起作用。

当调用$('a') 将同时返回所有的链接 .click(fn)增加所有的处理到每一个独立的元素,当
新连接被加载的时候,它们是无效的。有两个办法处理这种情况:

再次绑定
这个方法 暗示调用.bind()方法到新加的元素上,当他们被loaded/added时,例如:

 $('a').click(fn);
 $('#mydiv').load('my.html',function(){
   $('a').click(fn);
 });

应用 Live Query 插件
察看一下 Live Query 插件,允许下面这种写法
 $('a').livequery('click',fn);
 $('#mydiv').load('my.html');
这个插件自动再次绑定事件到目标元素,甚至从远程页面加载内容


发表评论

电子邮件地址不会被公开。 必填项已用*标注

5 + 3 =