Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > alt.computer > #11887
| From | Thomas 'PointedEars' Lahn <PointedEars@web.de> |
|---|---|
| Newsgroups | alt.computer, comp.lang.javascript, sci.electronics.design |
| Subject | Highlighting text (was: How get windows FIND() to work?) |
| Followup-To | comp.lang.javascript |
| Date | 2020-08-05 08:32 +0200 |
| Organization | PointedEars Software (PES) |
| Message-ID | <3317374.iIbC2pHGDl@PointedEars.de> (permalink) |
| References | <kv3WG.33452$RN.31186@fx13.iad> |
Cross-posted to 3 groups.
Followups directed to: comp.lang.javascript
[Stop amok-crossposting. This has nothing to do with computers in general
or electronics design. *facepalm*]
Robert Baer wrote:
> Environment: Win7.1 Firefox 78
>
> Sample line used:
> <a href="downhole-measurements.html?find=able">Downhole Measurements</a>
What is happening then depends on the user agent. It is NOT a general
command to highlight something. HTML is NOT a programming language.
The FIND command of CMD.exe has *nothing to do* with HTML/JavaScript.
JavaScript is *case-sensitive*. And “window” is NOT “windows”.
> At least execution transfers from the calling HTML to the desired
> destination HTML.
HTML is _NOT_ a programming language. HTML does NOT “execute” and does NOT
“call”.
> BUT. the keyword does NOT get underlined or highlighted in any way.
Of course not. HTML – HyperText *Markup* Language – is _NOT_ a programming
language. To highlight something *in general*, you need a *programming*
language.
> It would be particularly nice if all the keywords got highlighted
> and the first keyword was presented on the screen (think loong document
> and keyword was in middle).
>
> Help?
-- downhole-measurements.html -----------------------------------
<!DOCTYPE html>
<html>
<head>
<!-- … -->
<script src='highlight.js'></script>
<!-- … -->
</head>
<body onload='highlight.highlightAndFocus()'>
<!-- … -->
</body>
</html>
-- highlight.js ----------------------------------------------------------
/**
* highlight.js – Highlights occurrences of text in HTML documents
* @author (C) 2020 Thomas 'PointedEars' Lahn <js@PointedEars.de>
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* The program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License at <http://www.gnu.org/licenses/>
* for more details.
*/
var highlight = {
getNeedle: function () {
/* Get value of value of “find” parameter */
var value = (window.location.search.match(/[?&]find=([^&#]+)/) || [,])
[1];
if (value) value = decodeURIComponent(value);
return value;
},
focus: function (needle) {
if (needle)
{
/* Focus first occurence */
if (typeof window.find != 'undefined' && !window.find(needle))
{
if (typeof console != 'undefined'
&& typeof console.log != 'undefined')
{
console.log('Text not found: "' + needle + '"');
}
}
}
},
highlight: function (needle) {
if (needle)
{
/* Highlight all occurrences */
document.body.innerHTML = document.body.innerHTML.replace(
new RegExp(
/* slurp textareas and tags */
'(<textarea>(?:[^<]|<[^\/])+<\/textarea>|<[^>]+>)|'
+ needle.replace(/[\]\\^$*+?.(){}|[]/g, "\\$&"),
'gi'),
function (match, tag, offset, all) {
/* ignore elements/tags */
if (tag) return tag;
return ('<span style="background-color: yellow; color: black">'
+ match + '</span>');
}
);
}
},
highlightAndFocus: function (needle) {
if (!needle) needle = this.getNeedle();
this.highlight(needle);
this.focus(needle);
}
};
--8<----------------------------------------------------------------------
F’up2 comp.lang.javascript
--
PointedEars
FAQ: <http://PointedEars.de/faq> | <http://PointedEars.de/es-matrix>
<https://github.com/PointedEars> | <http://PointedEars.de/wsvn/>
Twitter: @PointedEars2 | Please do not cc me./Bitte keine Kopien per E-Mail.
Back to alt.computer | Previous | Next — Previous in thread | Find similar | Unroll thread
How get windows FIND() to work? Robert Baer <robertbaer@localnet.com> - 2020-08-03 19:13 -0700
Re: How get windows FIND() to work? Arno Welzel <usenet@arnowelzel.de> - 2020-08-04 04:49 +0200
Re: How get windows FIND() to work? Robert Baer <robertbaer@localnet.com> - 2020-08-04 20:06 -0700
Re: How get windows FIND() to work? Arno Welzel <usenet@arnowelzel.de> - 2020-08-05 07:55 +0200
Re: How get windows FIND() to work? Clifford Heath <no.spam@please.net> - 2020-08-04 15:22 +1000
Re: How get windows FIND() to work? Robert Baer <robertbaer@localnet.com> - 2020-08-04 10:06 -0700
Re: How get windows FIND() to work? Arno Welzel <usenet@arnowelzel.de> - 2020-08-04 19:42 +0200
Re: How get windows FIND() to work? Robert Baer <robertbaer@localnet.com> - 2020-08-04 20:13 -0700
Re: How get windows FIND() to work? Clifford Heath <no.spam@please.net> - 2020-08-05 19:56 +1000
Re: How get windows FIND() to work? Arno Welzel <usenet@arnowelzel.de> - 2020-08-05 13:54 +0200
Re: How get windows FIND() to work? Clifford Heath <no.spam@please.net> - 2020-08-05 21:55 +1000
Re: How get windows FIND() to work? Arno Welzel <usenet@arnowelzel.de> - 2020-08-05 15:40 +0200
Re: How get windows FIND() to work? Robert Baer <robertbaer@localnet.com> - 2020-08-06 12:27 -0700
Re: How get windows FIND() to work? Arno Welzel <usenet@arnowelzel.de> - 2020-08-07 14:09 +0200
Re: How get windows FIND() to work? Robert Baer <robertbaer@localnet.com> - 2020-08-06 12:24 -0700
Re: How get windows FIND() to work? Robert Baer <robertbaer@localnet.com> - 2020-08-06 12:23 -0700
Re: How get windows FIND() to work? Robert Baer <robertbaer@localnet.com> - 2020-08-06 12:16 -0700
Re: How get windows FIND() to work? "R.Wieser" <address@not.available> - 2020-08-04 09:10 +0200
Re: How get windows FIND() to work? "Evertjan." <exxjxw.hannivoort@inter.nl.net> - 2020-08-04 23:46 +0200
Re: How get windows FIND() to work? Robert Baer <robertbaer@localnet.com> - 2020-08-04 20:21 -0700
Re: How get windows FIND() to work? Arno Welzel <usenet@arnowelzel.de> - 2020-08-05 07:56 +0200
Re: How get windows FIND() to work? Robert Baer <robertbaer@localnet.com> - 2020-08-06 11:40 -0700
Re: How get windows FIND() to work? Arno Welzel <usenet@arnowelzel.de> - 2020-08-07 14:26 +0200
Re: How get windows FIND() to work? "R.Wieser" <address@not.available> - 2020-08-05 08:59 +0200
Re: How get windows FIND() to work? "Evertjan." <exxjxw.hannivoort@inter.nl.net> - 2020-08-06 01:11 +0200
Re: How get windows FIND() to work? Clifford Heath <no.spam@please.net> - 2020-08-06 11:36 +1000
Re: How get windows FIND() to work? "Evertjan." <exxjxw.hannivoort@inter.nl.net> - 2020-08-06 12:24 +0200
Re: How get windows FIND() to work? Robert Baer <robertbaer@localnet.com> - 2020-08-06 12:40 -0700
Re: How get windows FIND() to work? "R.Wieser" <address@not.available> - 2020-08-07 10:27 +0200
Re: How get windows FIND() to work? Thomas 'PointedEars' Lahn <PointedEars@web.de> - 2020-08-08 04:39 +0200
Re: How get windows FIND() to work? Clifford Heath <no.spam@please.net> - 2020-08-07 18:46 +1000
Highlighting text (was: How get windows FIND() to work?) Thomas 'PointedEars' Lahn <PointedEars@web.de> - 2020-08-05 08:32 +0200
csiph-web