jQuery缓存元素

时间:2012-06-09 14:22:53

标签: jquery variables

我有一个使用缓存元素(el)的函数来更改 2 divs 的字体大小。当函数执行时,我需要根据div(tagCommontagLatin)来确保字体不会太小或太大。那么如何在函数中确定哪个元素是通过el传递给它的?

我想我可能会过度思考这个问题或做错了,有点像我黑客攻击 ... ...通常当感觉有什么不对的时候。

var cb               = $('#tagCommon');
var lb               = $('#tagLatin'); 
changeFontSize(cb,1,'up');

function changeFontSize(el,amount,UporDown){
   var size = parseFloat($(el).css("font-size").replace(/px/, ""));
   // do some stuff here

   // ????????
   if(el == $('#tagCommon')) //check font size and alert if too small
   if(el == $('#tagLatin')) //check font size and alert if too small
}

感谢您的时间。

托德

2 个答案:

答案 0 :(得分:3)

使用jQuery is()方法

  

根据选择器元素检查当前匹配的元素集,   或jQuery对象,如果至少有其中一个元素,则返回true   匹配给定的参数。

if(el.is('#tagCommon'))
    {
      //  your code here
    }

答案 1 :(得分:1)

function changeFontSize(el,amount,UporDown){
   var size = parseFloat($(el).css("font-size").replace(/px/, "")),
       id = el.attr('id'); // or el[0].id

   if(id == 'tagCommon') //check font size and alert if too small
   if(id == 'tagLatin') //check font size and alert if too small

   // OR
   if(id == 'tagCommon')
   if(id == 'tagLatin')

   // OR
   if(el.is('#tagCommon'))
   if(el.is('#tagLatin'))
}

.attr('id')将检索ID并与提供的

匹配

.is()匹配选择器,元素或jQuery对象的元素集。返回值boolean true / false。