aboutsummaryrefslogtreecommitdiff
path: root/tools/addon-sdk-1.5/examples/annotator/data/selector.js
diff options
context:
space:
mode:
Diffstat (limited to 'tools/addon-sdk-1.5/examples/annotator/data/selector.js')
-rw-r--r--tools/addon-sdk-1.5/examples/annotator/data/selector.js73
1 files changed, 0 insertions, 73 deletions
diff --git a/tools/addon-sdk-1.5/examples/annotator/data/selector.js b/tools/addon-sdk-1.5/examples/annotator/data/selector.js
deleted file mode 100644
index f42dbfa..0000000
--- a/tools/addon-sdk-1.5/examples/annotator/data/selector.js
+++ /dev/null
@@ -1,73 +0,0 @@
-/* This Source Code Form is subject to the terms of the Mozilla Public
- * License, v. 2.0. If a copy of the MPL was not distributed with this
- * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
-
-/*
-The selector locates elements that are suitable for annotation and enables
-the user to select them.
-
-On 'mouseenter' events associated with <p> elements:
-- if the selector is active and the element is not already annotated
-- find the nearest ancestor which has an id attribute: this is supposed to
-make identification of this element more accurate
-- highlight the element
-- bind 'click' for the element to send a message back to the add-on, including
-all the information associated with the anchor.
-*/
-
-var matchedElement = null;
-var originalBgColor = null;
-var active = false;
-
-function resetMatchedElement() {
- if (matchedElement) {
- matchedElement.css('background-color', originalBgColor);
- matchedElement.unbind('click.annotator');
- }
-}
-
-self.on('message', function onMessage(activation) {
- active = activation;
- if (!active) {
- resetMatchedElement();
- }
-});
-
-function getInnerText(element) {
- // jQuery.text() returns content of <script> tags, we need to ignore those
- var list = [];
- element.find("*").andSelf().contents()
- .filter(function () {
- return this.nodeType == 3 && this.parentNode.tagName != "SCRIPT";
- })
- .each(function () {
- list.push(this.nodeValue);
- });
- return list.join("");
-}
-
-$('*').mouseenter(function() {
- if (!active || $(this).hasClass('annotated')) {
- return;
- }
- resetMatchedElement();
- ancestor = $(this).closest("[id]");
- matchedElement = $(this).first();
- originalBgColor = matchedElement.css('background-color');
- matchedElement.css('background-color', 'yellow');
- matchedElement.bind('click.annotator', function(event) {
- event.stopPropagation();
- event.preventDefault();
- self.port.emit('show',
- [
- document.location.toString(),
- ancestor.attr("id"),
- getInnerText(matchedElement)
- ]
- );
- });
-});
-
-$('*').mouseout(function() {
- resetMatchedElement();
-});