使用javascript获取html元素的所有属性

时间:2015-05-04 10:46:44

标签: javascript html attributes

如何获取HTML元素的所有属性? 例如,我有一个元素:

<input type="text" class"cls1" id="myId" name="myName"/> 

我希望看到可以用于此输入的所有属性/属性,而不仅仅是已经分配的属性(类型,类,id,名称),但是可以在此元素上使用的所有可用属性。

使用此方法,我只能看到已分配的属性:|

var attr = document.getElementById("myId").attributes;
console.log(attr);

5 个答案:

答案 0 :(得分:2)

var el = document.getElementById("myId");

var nodes=[], values=[];
for (var att, i = 0, atts = el.attributes, n = atts.length; i < n; i++){
    att = atts[i];
    nodes.push(att.nodeName);
    values.push(att.nodeValue);
    console.log(att.nodeName + " - " + att.nodeValue);
}

答案 1 :(得分:1)

你可以这样做,

var attr = document.getElementById("myId").attributes;
for (var key in attr) {
  if (typeof attr[key] != 'function')
    console.log(attr[key]);
}

答案 2 :(得分:0)

我认为您可以使用

获取所有可枚举的属性
- (UIImage *) scaleToSize: (CGSize)size
{
    // Scalling selected image to targeted size
    CGColorSpaceRef colorSpace = CGColorSpaceCreateDeviceRGB();
    CGContextRef context = CGBitmapContextCreate(NULL, size.width, size.height, 8, 0, colorSpace, kCGImageAlphaPremultipliedLast);
    CGContextClearRect(context, CGRectMake(0, 0, size.width, size.height));

    if(self.imageOrientation == UIImageOrientationRight)
    {
        CGContextRotateCTM(context, -M_PI_2);
        CGContextTranslateCTM(context, -size.height, 0.0f);
        CGContextDrawImage(context, CGRectMake(0, 0, size.height, size.width), self.CGImage);
    }
    else
        CGContextDrawImage(context, CGRectMake(0, 0, size.width, size.height), self.CGImage);

    CGImageRef scaledImage=CGBitmapContextCreateImage(context);

    CGColorSpaceRelease(colorSpace);
    CGContextRelease(context);

    UIImage *image = [UIImage imageWithCGImage: scaledImage];

    CGImageRelease(scaledImage);

    return image;
}

演示:Fiddle

Object.Keys() - 对于older browsers,请使用polyfill

答案 3 :(得分:0)

尝试 console.dir()

console.dir(document.getElementById('myId'));

答案 4 :(得分:0)

var attr = document.getElementById("myId").attributes;
for(var key in attr){
    var element = attr[key];
    if(typeof element == 'object'){
        console.log(element.name );
        console.log(element.value);
    }
}