JQuery 如何预定义整站文档的$选择器?

沙白 发布于 2014/03/10 13:41
阅读 242
收藏 0
深深的被jquery迷住,由此从前端设计开始跳槽学习js。由于没有基础,问题或许有些白痴,请大家海涵!

我一直定义jquery对象用最简单方法
比如

var div = $("#div"),
     sidebar = $("#sidebar"),
     main = $("#container .main"),
....

然后我要定义每个元素的宽度变量名

     div_width = div.width(),  
     sidebar_width = sidebar.width(),  
     main_width = main.width(),  
....  

或者还需要高度

     div_width = div.height(),  
     sidebar_width = sidebar.height(),  
     main_width = main.height(),  
....  
可能还需要更多等等...

但如果运用整站的情况下,就按此形式重复下去。
但貌似不是很好管理。感觉这种书写形式也很笨

能不能把class名先创一个集合,如果要调用的时候再来调用它呢?
像这样 #div,#sidebar,.main
而不是重复的$("class名")


比如宽度  w = width()  然后我调用某元素宽度时就  div.w?  是否可行


谢谢!

加载中
0
lazyDyvh
lazyDyvh

class本来就是一个集合 

例如你有多个$("#container .main")

单独调用其中一个就是$("#container .main:eq(0)")  只对第一个出现的class="main"起作用


沙白
沙白
回复 @lazyDyvh : 很好理解。太谢谢了!
lazyDyvh
lazyDyvh
回复 @沙白 : 你这个和json的原理是一样的 定义一个json格式的对象 var json = {"div":$("div"),"main":$(".main")}; 调用的时候: json.div 就等同于 $("div"); 可否理解?
沙白
沙白
比如我再加上宽度w = width() 那我调用#div宽度时 就写成el_div.w 不知道这样能否实现 我的想法时想规范书写
沙白
沙白
感谢你的答题 不好意思 太菜了 我问题没讲清楚 $.element = { main:"main" hover:"hover" // 悬停class icon:"icon" // 所有图标 button:"button" //所有按钮 ... }; 然后我调用的时候 直接是el_div el_icon 而不是$("div") $("el_icon")
0
Barb1eQ
Barb1eQ
#+id是id选择器,选择唯一的元素。.+class才是class选择器,选择的是一个集合。
0
Romen
Romen
楼上正解
OSCHINA
登录后可查看更多优质内容
返回顶部
顶部