Solved

Retrieving selected text from mouse highlight

Posted on 2002-06-20
5
174 Views
Last Modified: 2012-05-04
This is probably obvious, but I'm getting nowhere. It's partly and XSL/XML question, but I think the answer is in HTML -

I'm using an XSL translation to show some XML data in the browser. I want to be able to highlight ranges of text and then somehow get to the tag references of the selected range.

I can't seem to find any way to grab just the selected text (short of a right click, cut copy paste) but I'm sure there's got to be a way to do this.

The following is a chunk of the translation source. What I'd like to be able to do is highlight "Here's some line 1 text. Here's some line 2 text" and be able to know that the Index values for the selected range were 1 and 2.

I've got the selected text (document.selection.createrange) but is it possible to get the underlying tag info?

???

<TextFile>
<Page>1
<Text>  Here's some line 1 text</Text>
<Line>1</Line>
<Index>23</Index>
<Text>  Here's some line 2 text</Text>
<Line>1</Line>
<Index>24</Index>
</Page>
<Page>2
<Text>  Here's some page 2 line 1 text</Text>
<Line>1</Line>
<Index>1</Index>
<Text>  Here's some line 2 text</Text>
<Line>1</Line>
<Index>1</Index>
</Page>
</TextFile>
0
Comment
Question by:carpbyte
  • 3
5 Comments
 
LVL 53

Expert Comment

by:COBOLdinosaur
ID: 7098459
This might help:

FROM:

http://msdn.microsoft.com/Downloads/samples/Internet/ie55/editregions/editregions.htm


<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">

<HTML>
<HEAD>
<TITLE>Editable Regions Sample</TITLE>

<LINK REL="stylesheet" HREF="/workshop/samples/author/dhtml/refs/samplessdkIE4.css" TYPE="text/css">

<STYLE>
body{
margin:0;
background:white;
font-family:verdana;
font-size:80%;
}
.bar{
background:#336699;
width:100%;
height:30px;
border-top:1px solid #99CCFF;
border-bottom:1px solid #000000;
}
.desbar{
background:#FFFFFF;
width:100%;
padding: 10px;
border-top:1px solid #CCCCCC;
border-bottom:1px solid #000000;
color:black;
font-size:8pt;
height:105;
}
.title{
font-size:15pt;
color:white;
padding-left:10px;
}
PRE { margin:0}

a:link
{
text-decoration:none;
color:white
}
a:visited
{
text-decoration:none;
color:white
}
a:active
{
text-decoration:none;
color:white
}
a:hover
{
text-decoration:none;
color:yellow
}
BUTTON {cursor:hand; background:#ffffff; border-color:#99ccff; font-weight:bold;}
</STYLE>


<SCRIPT>
function fnToggleEdits(oObj,oBtn) {
    currentState = oObj.isContentEditable;
    newState = !currentState;
    oObj.contentEditable = newState;
   
    newState==false ? oBtn.innerHTML='Editing On' :
        oBtn.innerHTML='Editing Off';
}
</SCRIPT>

</HEAD>

<BODY >
<!-- TOOLBAR_START --><!-- TOOLBAR_EXEMPT --><!-- TOOLBAR_END -->
<DIV CLASS="bar title">
Editable Regions Sample
</DIV>
<DIV CLASS="desbar">
<H4 style="font-size:10pt;">
This example demonstrates the features of Microsoft&#174; Internet Explorer that enable users to edit the content of an HTML element directly from the browser.
</H3>
<P> This HTML editor is a DIV element set to be content editable. Any valid HTML content (text, images, form controls, etc.) can be pasted and edited in this editor.</P>

<div align="center">
<DIV UNSELECTABLE ALIGN="center" STYLE="height:210; width:90%; background-color:#99CCFF; border:1px solid black">  
    <DIV CLASS="bar title">HTMLEditor (Content Editable DIV)</DIV>

<DIV style="padding:10px">
  <BUTTON UNSELECTABLE ID="oEditDiv" TITLE="Editing Off" onclick='fnToggleEdits(oDiv,oEditDiv);oDiv.focus();'>Editing Off</BUTTON>  
  <BUTTON UNSELECTABLE  TITLE="Bold" onclick='if (oDiv.isContentEditable==true) document.execCommand("Bold"); oDiv.focus();' >Bold</BUTTON>  
  <BUTTON UNSELECTABLE  TITLE="Italic" onclick='if (oDiv.isContentEditable==true) document.execCommand("Italic"); oDiv.focus();' ><I>Italic</I></BUTTON>  
  <BUTTON UNSELECTABLE  TITLE="Underline" onclick='if (oDiv.isContentEditable==true) document.execCommand("Underline"); oDiv.focus();'><U>Underline</U> </BUTTON>
 
</DIV>
  <DIV id=oDiv contenteditable ALIGN=left STYLE="height:100; width:95%;background-color:white; font-face:Arial; padding:3;    
   border:inset #99ccff; scrollbar-base-color:#99ccff; overflow=auto;"></DIV>
<BUTTON UNSELECTABLE TITLE="Append from HTMLEditor" onclick='oTextarea.value+=oDiv.innerHTML;oTextarea.focus();'>
      Append to TextEditor</BUTTON>
   
</DIV>
</div>
<BR/>

<P>This text editor is a TEXTAREA element and is content editable by default. Only text can be edited in this tool. However, you can draft HTML in TEXTEditor and press the Append to HTMLEditor button to see the result appended to HTMLEditor. The Append to TextEditor button reverses this process by appending the HTMLEditor's HTML as text to TEXTEditor.<BR/><BR/>
<br>

<div align="center">
<DIV UNSELECTABLE ALIGN="center" STYLE="height:210; width:90%; background-color:#99ccff; border:1px solid black">  
    <DIV CLASS="bar title">TEXTEditor (TEXTAREA)</DIV>
      
<DIV style="padding:10">
      
      <BUTTON UNSELECTABLE ID="oEditText" TITLE="Editing Off"
      onclick='fnToggleEdits(oTextarea,oEditText);oTextarea.focus();'>Editing Off</BUTTON>
</DIV>
   
  <TEXTAREA id=oTextarea ALIGN=left STYLE="height:100; width:95%;background-color:white; padding:3; border:inset #99ccff; scrollbar-base-color:#99ccff; overflow=auto;"></TEXTAREA>  
  <BR/>
      <BUTTON UNSELECTABLE TITLE="Append to HTMLEditor" onclick='oDiv.innerHTML+=oTextarea.value;oTextarea.focus();'>  
   Append to HTMLEditor</BUTTON>
</DIV>
</div>
<BR/><P>Both editors use the same function to activate or deactivate editing. The function uses the <b>isContentEditable</b> property to test whether editing is active. Accordingly, the <b>contentEditable</b> property is then reversed to reset editing.
</DIV>

<DIV CLASS="bar" STYLE=" padding:5px; padding-left:10">
<A href="http://www.microsoft.com/misc/info/cpyright.htm" target=_top>
&#169;2002 Microsoft Corporation . All rights reserved. Terms of use</A>.
</DIV>
<P><HR><font color="black" face="ms sans serif" size="1">&copy;<a href="http://msdn.microsoft.com/isapi/gomscom.asp?TARGET=/info/cpyright.htm" target="_top"> 2002 Microsoft Corporation .  All rights reserved.  Terms of use.</a></font>
</body>
</html>

Please note this is copyrighted material.

Cd&

0
 
LVL 53

Expert Comment

by:COBOLdinosaur
ID: 7182694
This question has been abandoned. I will make a recommendation to the
moderators on its resolution in a week or two. I appreciate any comments
that would help me to make a recommendation.
<note>
   In the absence of responses, I may recommend DELETE unless it is clear
   to me that it has value as a PAQ.  Silence = you don't care
</note>

Cd&
0
 

Author Comment

by:carpbyte
ID: 7183952
Sorry I thought I had commented on the response, but apparently not.

I did look at the editor sample but it still doesn't provide the level of control I was looking for - style sheets and XML translations appear to have undesirable random effects on the text selection range so I've resorted to a different solution outside of HTML.

Thank you for the comment and the proposed solution, but I guess I have abandoned the question.

Carp.
0
 
LVL 53

Expert Comment

by:COBOLdinosaur
ID: 7211790
It is time to clean this abandoned question up.  

I am putting it on a clean up list for CS.

<recommendation>
zerp point PAQ

</recommendation>

If anyone participating in the Q disagrees with the recommendation,
please leave a comment for the mods.

Cd&
0
 
LVL 5

Accepted Solution

by:
Netminder earned 0 total points
ID: 7237611
Per recommendation, points refunded and question closed.

Netminder
CS Moderator
0

Featured Post

Is Your Active Directory as Secure as You Think?

More than 75% of all records are compromised because of the loss or theft of a privileged credential. Experts have been exploring Active Directory infrastructure to identify key threats and establish best practices for keeping data safe. Attend this month’s webinar to learn more.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Title # Comments Views Activity
CSS measurement 10 34
Bootstrap 3 icons 3 40
Printing a Google Form 2 25
Centered Image 2 22
This article discusses four methods for overlaying images in a container on a web page
This article explains how to prepare an HTML email signature template file containing dynamic placeholders for users' Azure AD data. Furthermore, it explains how to use this file to remotely set up a department-wide email signature policy in Office …
In this tutorial viewers will learn how add a scalable full-width header using CSS3. Create a new HTML document with an internal stylesheet. Set a tiled background.:  Create a new div and name it Header. Position it with position:absolute at the top…
The viewer will learn how to create a basic form using some HTML5 and PHP for later processing. Set up your basic HTML file. Open your form tag and set the method and action attributes.: (CODE) Set up your first few inputs one for the name and …

920 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

15 Experts available now in Live!

Get 1:1 Help Now