Property or Attribute?

Discussion in 'Javascript' started by Robert Mark Bram, Jul 29, 2003.

  1. Howdy all!

    When do I call something a property and when do I call something an
    attribute?

    It has me a little confused at the moment!

    Any advice would be most appreciated!

    Rob
    :)
     
    Robert Mark Bram, Jul 29, 2003
    #1
    1. Advertising

  2. Howdy David!

    > > When do I call something a property

    >
    > When its CSS.


    So I can say that the visibility property can be set to visible or
    invisible..

    > > and when do I call something an attribute?

    >
    > When its HTML or XML.


    And I can talk about the SELECTED attribute of a CHECK BOX..


    What about in JavaScript? Should I say a SELECT element has OPTION child
    elements or properties.. and is the selectedIndex of a SELECT be a property
    or attribute when I am accessing them in JavaScript?

    I guess I am also gettting confused between JavaScript objects (which I know
    are a collection of properties) and objects in the DOM. Do we say that
    either of these have attributes?

    Thank you very much for your response!

    Rob
    :)
     
    Robert Mark Bram, Jul 29, 2003
    #2
    1. Advertising

  3. "Robert Mark Bram" <> writes:

    > When do I call something a property and when do I call something an
    > attribute?


    The traditional usage is (if I understand it correctly):

    - Javascript objects have properties. In "obj.foo" or "obj['foo']",
    "foo" is the name of the property. Some properties are functions and
    are sometimes called "methods". That is the terminology used in, e.g.,
    the ECMS262 specification.

    - HTML tags have attributes. In "<body onload='init()'>", "onload='init()'"
    is an attribute. We call "onload" the attribute name and "'init()'" is the
    attribute value. That is the terminology used in the HTML specifications.

    - CSS rules have properties. In "#foo {width:50px;color:red;}" the
    (CSS) properties are "width" and "color". That is the terminology used
    in the CSS specifications.


    Where it becomes fun is when you write things like:
    <div id="foo" style="color:red;">
    and later
    document.getElementById("foo").style.color="green";

    - "document" is a global variable (a property of the global object),
    and it refers to the document object.
    - "getElementById" is a property of the document object. It is a function
    so we call it a method.
    - The name "foo" refers to the id attribute of the div tag, and the DOM
    *element* (an object) returned by the function call is the DOM
    representation of the div *tag*.
    - The "style" property of the div element corresponds to the "style"
    attribute of the div tag.
    - the "color" property of the style element corresponds to the CSS property
    "color".

    /L
    --
    Lasse Reichstein Nielsen -
    Art D'HTML: <URL:http://www.infimum.dk/HTML/randomArtSplit.html>
    'Faith without judgement merely degrades the spirit divine.'
     
    Lasse Reichstein Nielsen, Jul 29, 2003
    #3
  4. Thank you so much for the reply Lasse,

    Your explanation clears up a lot of things for me - in particular the idea
    that although each technology maintains its own lingo, they crossover
    somewhat.

    Thank you again. :)

    Rob
    :)
     
    Robert Mark Bram, Jul 29, 2003
    #4
    1. Advertising

Want to reply to this thread or ask your own question?

It takes just 2 minutes to sign up (and it's free!). Just click the sign up button to choose a username and then you can ask your own questions on the forum.
Similar Threads
  1. Bostonasian
    Replies:
    1
    Views:
    826
    Joris Gillis
    Sep 18, 2005
  2. Replies:
    2
    Views:
    1,085
    Henry S. Thompson
    Mar 6, 2006
  3. Donnal Walter

    class attribute to instance attribute

    Donnal Walter, Jun 30, 2005, in forum: Python
    Replies:
    4
    Views:
    482
    Greg Ewing
    Jul 6, 2005
  4. Russell Warren
    Replies:
    5
    Views:
    486
    Russell Warren
    Jan 17, 2006
  5. anonymous
    Replies:
    1
    Views:
    5,999
Loading...

Share This Page