www.webdeveloper.com
Results 1 to 5 of 5

Thread: problem

  1. #1
    Join Date
    Oct 2011
    Posts
    2

    problem

    hi everyone
    i have a little problem
    my file content a div tag like that:
    <div id='my' style='color:black'>abcdef</div>
    <button type='button' onclick='fff();'>click</button>

    and i want by clicking the button to call a function fff();
    that will change the color of a the letter 'a' to red so i tried:
    <script type='text/javascript'>
    function fff()
    {
    var a = document.getElementById('my');
    a.childNodes[0].nodeValue[0].style.color='red'; /* i know nodeValue is wrong */

    }
    </script>

    could someone helps me. thanks meni

  2. #2
    Join Date
    Jun 2004
    Location
    Portsmouth UK
    Posts
    2,644
    Code:
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
        "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    
    <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
    
    <head>
      <title></title>
    </head>
    
    <body>
    <div id='my' style='color:black'>abcdef</div>
    <button type='button' onclick='fff();'>click</button>
    
    and i want by clicking the button to call a function fff();
    that will change the color of a the letter 'a' to red so i tried:
    <script type='text/javascript'>
    function fff()
    {
    document.getElementById('my').style.color='red'; /* i know nodeValue is wrong */
    
    }
    </script>
    
    </body>
    
    </html>
    Vic

    God loves you and will never love you less.

    http://www.vicsjavascripts.org/Home.htm
    If my post has been useful please donate to http://www.operationsmile.org.uk/

  3. #3
    Join Date
    Oct 2011
    Posts
    2

    could someone help me

    with my problem

  4. #4
    Join Date
    Oct 2007
    Location
    Western Massachusetts, USA
    Posts
    387
    You want the 'a' in "abcdef", the innerHTML/innerText of document.getElementById("my") to change it's style.color to "red"?

    Perhaps these two methods (searching/replacing) and substring replacing will help:
    PHP Code:
    <html>
    <
    head>
    </
    head>
    <
    body>

    <
    script language="javascript" type="text/javascript">

    function 
    searchChange(ele,substr,color) {
    var 
    ele.innerText;
    var 
    "";

      for (
    0t.lengthi++) {
      var 
    matches 0;
        if (
    <= t.length-substr.length) {
          for (
    0substr.lengths++) {
            if (
    t.charAt(i+s) == substr.charAt(s)) {
            
    matches++;
            }
          }
        }
        if (
    matches == substr.length) {
        
    += "<font style=\"color: "+color+"; \">"+substr+"</font>";
        
    += substr.length-1;
        }
        else {
        
    += t.charAt(i);
        }
      }

    //r = t.replace(substr, "<font style=\"color: "+color+"; \">"+substr+"</font>");

    ele.innerHTML r;
    }
    function 
    setChange(ele,pos,len,color) {
    //t = text; a,b,c = substrings; r = result
    var ele.innerText;
    var 
    t.substr(0,pos);
    var 
    t.substr(pos,len);
    var 
    t.substr(pos+lent.length); //t.length is not technically required here
    var a+"<font style=\"color: "+color+"; \">"+b+"</font>"+c;
    ele.innerHTML r;
    }

    </script>

    <div id="my">abcdef one more a letter</div>

    <input type="button" value="Search Change" onclick="searchChange(document.getElementById('my'),'abc','red')">
    <input type="button" value="Set Change" onclick="setChange(document.getElementById('my'),3,3,'red')">

    </body>
    </html> 
    Computer programmer / web developer.

  5. #5
    Join Date
    Dec 2005
    Location
    FL
    Posts
    7,257

    Lightbulb An alternate attempt...

    Is this closer to your desires? ...
    Code:
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
        "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    
    <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
    
    <head>
      <title></title>
    </head>
    
    <body>
    <div id='my' style='color:black'>abcdef</div>
    <button type='button' onclick='fff();'>click</button>
    <br>
    and i want by clicking the button to call a function fff();
    that will change the color of a the letter 'a' to red so i tried:
    <script type='text/javascript'>
    function fff() {
      var tmp = document.getElementById('my').innerHTML;
      tmp = '<span style="color:red">'+tmp.charAt(0)+'</span><span>'+tmp.substr(1)+'</span>';
      document.getElementById('my').innerHTML = tmp;
    }
    </script>
    
    </body>
    
    </html>

Thread Information

Users Browsing this Thread

There are currently 1 users browsing this thread. (0 members and 1 guests)

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  
HTML5 Development Center



Recent Articles