Using the TextRectangle Object Properties : JavaScript DHTML examples (example source code) » HTML » Text HTML

JavaScript DHTML










Java Products
Java Articles
JavaScript DHTML Home  »   HTML   » [  Text HTML  ]   

 
Using the TextRectangle Object Properties

Please note that some example is only working under IE or Firefox.

/*
JavaScript Bible, Fourth Edition
by Danny Goodman 

Publisher: John Wiley & Sons CopyRight 2001
ISBN: 0764533428
*/


<HTML>
<HEAD>
<TITLE>TextRectangle Object</TITLE>
<SCRIPT LANGUAGE="JavaScript">
// preserve reference to last clicked elem so resize can re-use it
var lastElem
// TextRectangle left tends to be out of registration by a couple of pixels
var rectLeftCorrection = 2
// process mouse click
function handleClick() {
    var elem = event.srcElement
    if (elem.className && elem.className == "sample") {
        // set hiliter element only on a subset of elements
        lastElem = elem
        setHiliter()
    else {
        // otherwise, hide the hiliter
        hideHiliter()
    }
}
function setHiliter() {
    if (lastElem) {
        var textRect = lastElem.getBoundingClientRect()
        hiliter.style.pixelTop = textRect.top + document.body.scrollTop
        hiliter.style.pixelLeft = textRect.left + document.body.scrollLeft -
            rectLeftCorrection
        hiliter.style.pixelHeight = textRect.bottom - textRect.top
        hiliter.style.pixelWidth = textRect.right - textRect.left
        hiliter.style.visibility = "visible"
    }
}
function hideHiliter() {
    hiliter.style.visibility = "hidden"
    lastElem = null
}
</SCRIPT>
</HEAD>
<BODY onClick="handleClick()" onResize="setHiliter()">
<H1>TextRectangle Object</H1>
<HR>
<P>Click on any of the four colored elements in the paragraph below and watch
 the highlight rectangle adjust itself to the element's TextRectangle object.
<P CLASS="sample">Lorem ipsum dolor sit amet, <SPAN CLASS="sample"
 STYLE="color:red">consectetaur adipisicing elit</SPAN>, sed do eiusmod tempor
 <SPAN CLASS="sample" STYLE="color:green">incididunt ut labore et dolore <SPAN
 CLASS="sample" STYLE="color:blue">magna aliqua</SPAN>. Ut enim adminim veniam,
 quis nostrud exercitation ullamco</SPAN> laboris nisi ut aliquip ex ea commodo
 consequat. Duis aute irure dolor in reprehenderit involuptate velit esse cillum
 dolore eu fugiat nulla pariatur.</P>
<DIV ID="hiliter" STYLE="position:absolute; background-color:salmon; z-index:-1;
 visibility:hidden"></DIV>
</BODY>
</HTML>
Related examples in the same category
1.  An example of a scrolling message
2.  Animating Text Styles
3.  Moving Text
4.  Exploring the Bounding TextRange Properties
5.  Lab for compareEndPoints() Method
6.   Two Search and Replace Approaches (with Undo)
7.  Using the document.selection Object
8.  Encipher and Decipher








Home| Contact Us
Copyright 2003 - 04 Demo Source and Support. All rights reserved.
All other trademarks are property of their respective owners.