100% found this document useful (4 votes)
40 views

Get Learning Jquery 3 Build Interesting Interactive Sites Using Jquery by Automating Common Tasks and Simplifying The Complicated Ones 2017 5e by Adam Boduch Free All Chapters

tasks

Uploaded by

mratinbardou
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
100% found this document useful (4 votes)
40 views

Get Learning Jquery 3 Build Interesting Interactive Sites Using Jquery by Automating Common Tasks and Simplifying The Complicated Ones 2017 5e by Adam Boduch Free All Chapters

tasks

Uploaded by

mratinbardou
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 52

Download the full version of the textbook now at textbookfull.

com

Learning jQuery 3 Build interesting


interactive sites using jQuery by automating
common tasks and simplifying the complicated
ones 2017 5e by Adam Boduch
https://textbookfull.com/product/learning-
jquery-3-build-interesting-interactive-sites-
using-jquery-by-automating-common-tasks-and-
simplifying-the-complicated-ones-2017-5e-by-adam-
boduch/

Explore and download more textbook at https://textbookfull.com


Recommended digital products (PDF, EPUB, MOBI) that
you can download immediately if you are interested.

Responsive Web Design by Example Embrace responsive design


with HTML5 CSS3 JavaScript jQuery and Bootstrap 4 Hussain

https://textbookfull.com/product/responsive-web-design-by-example-
embrace-responsive-design-with-html5-css3-javascript-jquery-and-
bootstrap-4-hussain/
textbookfull.com

jQuery UI 1 10 The User Interface Library for jQuery 1st


Edition Libby Alex Wellman Dan

https://textbookfull.com/product/jquery-ui-1-10-the-user-interface-
library-for-jquery-1st-edition-libby-alex-wellman-dan/

textbookfull.com

Learning C 7 By Developing Games with Unity 2017 Learn C


Programming by building fun and interactive games with
Unity Third Edition Micael Dagraca
https://textbookfull.com/product/learning-c-7-by-developing-games-
with-unity-2017-learn-c-programming-by-building-fun-and-interactive-
games-with-unity-third-edition-micael-dagraca/
textbookfull.com

The Great Free Trade Myth: British Foreign Policy And East
Asia Since 1980 Michael Reilly

https://textbookfull.com/product/the-great-free-trade-myth-british-
foreign-policy-and-east-asia-since-1980-michael-reilly/

textbookfull.com
Security Operations Center Guidebook A Practical Guide for
a Successful SOC Gregory Jarpey

https://textbookfull.com/product/security-operations-center-guidebook-
a-practical-guide-for-a-successful-soc-gregory-jarpey/

textbookfull.com

Heart and Soul Shayne Davies 3 1st Edition Jackie May

https://textbookfull.com/product/heart-and-soul-shayne-davies-3-1st-
edition-jackie-may/

textbookfull.com

Endemic Disease in China Dianjun Sun

https://textbookfull.com/product/endemic-disease-in-china-dianjun-sun/

textbookfull.com

British Sociologists and French 'Sociologues' in the


Interwar Years: The Battle for Society Baudry Rocquin

https://textbookfull.com/product/british-sociologists-and-french-
sociologues-in-the-interwar-years-the-battle-for-society-baudry-
rocquin/
textbookfull.com

The Cambridge Handbook of Social Problems Volume 2 1st


Edition A Javier Treviño

https://textbookfull.com/product/the-cambridge-handbook-of-social-
problems-volume-2-1st-edition-a-javier-trevino/

textbookfull.com
OAuth 2 in Action 1st Edition Justin Richer

https://textbookfull.com/product/oauth-2-in-action-1st-edition-justin-
richer/

textbookfull.com
Title Page
Learning jQuery 3

Fifth Edition

Build interesting, interactive sites using jQuery by automating


common tasks and simplifying the complicated ones
Adam Boduch
Jonathan Chaffer
Karl Swedberg

BIRMINGHAM - MUMBAI

This book was downloaded from AvaxHome!

Visit my blog with more new books:

https://avxhm.se/blogs/AlenMiler
Copyright
Learning jQuery 3

Fifth Edition
Copyright © 2017 Packt Publishing

All rights reserved. No part of this book may be reproduced, stored


in a retrieval system, or transmitted in any form or by any means,
without the prior written permission of the publisher, except in the
case of brief quotations embedded in critical articles or reviews.

Every effort has been made in the preparation of this book to ensure
the accuracy of the information presented. However, the information
contained in this book is sold without warranty, either express or
implied. Neither the authors, nor Packt Publishing, and its dealers
and distributors will be held liable for any damages caused or
alleged to be caused directly or indirectly by this book.

Packt Publishing has endeavored to provide trademark information


about all of the companies and products mentioned in this book by
the appropriate use of capitals. However, Packt Publishing cannot
guarantee the accuracy of this information.

First published : July 2007

Second edition: Feburary 2009

Third edition: September 2011

Fourth edition: June 2013

Fifth edition: May 2017


Production reference: 1240517

Published by Packt Publishing Ltd.


Livery Place
35 Livery Street
Birmingham
B3 2PB, UK.

ISBN 978-1-78588-298-2

www.packtpub.com

This book was downloaded from AvaxHome!

Visit my blog with more new books:

https://avxhm.se/blogs/AlenMiler
Credits

Authors

Adam Boduch Copy Editor

Jonathan Chaffer Charlotte Carneiro

Karl Swedberg

Reviewer Project Coordinator

Andrew Kurz Devanshi Doshi

Commissioning Editor Proofreader

Amarabha Banerjee Safis Editing


Acquisition Editor Indexer

Smeet Thakkar Tejal Daruwale Soni

Content Development Editor Graphics

Onkar Wani Jason Monteiro

Technical Editor Production Coordinator

Rashil Shah Nilesh Mohite


About the Authors
Adam Boduch has been involved with large-scale JavaScript
development for nearly 10 years. Before moving to the frontend, he
worked on several large-scale cloud computing products, using
Python and Linux. No stranger to complexity, Adam has practical
experience with real-world software systems, and the scaling
challenges they pose.

He is the author of several JavaScript books, including React and


React Native, and is passionate about innovative user experiences
and high performance.

I'd like to thank John Resig for creating jQuery, and I'd like to thank
the collective jQuery community for making such a positive impact
on web development.

Jonathan Chaffer is a member of Rapid Development Group, a


web development firm located in Grand Rapids, Michigan. His work
there includes overseeing and implementing projects in a wide
variety of technologies, with an emphasis on PHP, MySQL, and
JavaScript. In the open source community, he has been very active
in the Drupal CMS project, which has adopted jQuery as its
JavaScript framework of choice. He is the creator of the Content
Construction Kit, now a part of the Drupal core used for managing
structured content. He is also responsible for major overhauls of
Drupal's menu system and developer API reference. In his spare
time, he designs board and card games for the hobby market. He
lives in Grand Rapids with his wife, Jennifer.

Karl Swedberg is a web developer at Fusionary Media in Grand


Rapids, Michigan, where he spends much of his time writing both
client-side and server-side JavaScript. When he isn't coding, he likes
to hang out with his family, roast coffee in his garage, and exercise
at the local gym.
About the Reviewer
Andrew Kurz is a UI/UX designer and developer with over 12 years
of experience designing and building websites and online
applications. He has worked for small start-ups, large corporations,
and everything in between. He enjoys learning new technology and
appreciates attractive, easy-to-use applications. He lives in Atlanta,
GA, with his wife and three children. You can view his portfolio and
contact him at www.kurzstudio.com.
www.PacktPub.com
For support files and downloads related to your book, please visit ww
w.PacktPub.com.

Did you know that Packt offers eBook versions of every book
published, with PDF and ePub files available? You can upgrade to the
eBook version at www.PacktPub.comand as a print book customer, you
are entitled to a discount on the eBook copy. Get in touch with us
at [email protected] for more details.

At www.PacktPub.com, you can also read a collection of free technical


articles, sign up for a range of free newsletters and receive exclusive
discounts and offers on Packt books and eBooks.

https://www.packtpub.com/mapt

Get the most in-demand software skills with Mapt. Mapt gives you
full access to all Packt books and video courses, as well as industry-
leading tools to help you plan your personal development and
advance your career.

Why subscribe?
Fully searchable across every book published by Packt
Copy and paste, print, and bookmark content
On demand and accessible via a web browser
Visit https://textbookfull.com
now to explore a rich
collection of eBooks, textbook
and enjoy exciting offers!
Customer Feedback
Thanks for purchasing this Packt book. At Packt, quality is at the
heart of our editorial process. To help us improve, please leave us an
honest review on this book's Amazon page at https://www.amazon.com/
dp/1785882988.

If you'd like to join our team of regular reviewers, you can e-mail us
at [email protected]. We award our regular reviewers with
free eBooks and videos in exchange for their valuable feedback. Help
us be relentless in improving our products!
Dedication

For Melissa, Jason, Simon, and Kevin. Thanks for all the
love and support.
Table of Contents
Preface
What this book covers
What you need for this book
Who this book is for
Conventions
Reader feedback
Customer support
Downloading the example code
Errata
Piracy
Questions
1. Getting Started
What jQuery does?
Why jQuery works well?
What's new in jQuery 3?
Browser support
Deferred objects
Asynchronous document-ready
All the rest
Making our first jQuery-powered web page
Downloading jQuery
Setting up jQuery in an HTML document
Adding our jQuery code
Finding the poem text
Injecting the new class
Executing the code
The finished product
Plain JavaScript versus jQuery
Using development tools
Chrome Developer Tools
Summary
2. Selecting Elements
Understanding the DOM
Using the $() function
CSS selectors
Styling list-item levels
Selector specificity
Attribute selectors
Styling links
Custom selectors
Styling alternate rows
Finding elements based on textual content
Form selectors
DOM traversal methods
Styling specific cells
Chaining
Iterating over jQuery objects
Accessing DOM elements
Summary
Further reading
Exercises
3. Handling Events
Performing tasks on page load
Timing of code execution
Handling multiple scripts on one page
Passing an argument to the document ready callback
Handling simple events
A simple style switcher
Enabling the other buttons
Making use of event handler context
Consolidating code using event context
Shorthand events
Showing and hiding page elements
Event propagation
The journey of an event
Side effects of event bubbling
Altering the journey - the event object
Event targets
Stopping event propagation
Preventing default actions
Delegating events
Using built-in event delegation capabilities
Removing an event handler
Giving namespaces to event handlers
Rebinding events
Simulating user interaction
Reacting to keyboard events
Summary
Further reading
Exercises
4. Styling and Animating
Modifying CSS with inline properties
Setting computed style property values
Using vendor-specific style properties
Hiding and showing elements
Effects and duration
Speeding in
Fading in and fading out
Sliding up and sliding down
Toggling visibility
Creating custom animations
Building effects by hand
Animating multiple properties at once
Positioning with CSS
Simultaneous versus queued effects
Working with a single set of elements
Bypassing the queue
Queuing effects manually
Working with multiple sets of elements
Queuing with callbacks
In a nutshell
Summary
Further reading
Exercises
5. Manipulating the DOM
Manipulating attributes and properties
Non-class attributes
Value callbacks
Data attributes
DOM element properties
The value of form controls
DOM tree manipulation
The $() function revisited
Creating new elements
Inserting new elements
Moving elements
Wrapping elements
Explicit iteration
Using inverted insertion methods
Copying elements
Cloning for pull quotes
Content getter and setter methods
DOM manipulation methods in a nutshell
Summary
Further reading
Exercises
6. Sending Data with Ajax
Loading data on demand
Appending HTML
Working with JavaScript objects
Retrieving JSON
Using global jQuery functions
Executing a script
Loading an XML document
Choosing a data format
Passing data to the server
Performing a GET request
Serializing a form
Keeping an eye on the request
Error handling
Ajax and events
Deferreds and promises
Performing Ajax calls on page load
Using fetch()
Summary
Further reading
Exercises
7. Using Plugins
Using a plugin
Downloading and referencing the Cycle plugin
Calling a plugin method
Specifying plugin method parameters
Modifying parameter defaults
Other types of plugins
Custom selectors
Global function plugins
The jQuery UI plugin library
Effects
Color animations
Class animations
Advanced easing
Additional effects
Interaction components
Widgets
jQuery UI ThemeRoller
The jQuery Mobile plugin library
HTML5 custom data attributes
Mobile navigation
Delivering multiple pages in one document
Interactive elements
List views
Toolbar buttons
Advanced features
Summary
Exercises
8. Developing Plugins
Using the dollar ($) alias in plugins
Adding new global functions
Adding multiple functions
Extending the global jQuery object
Isolating functions within namespaces
Adding jQuery object methods
Object method context
Implicit iteration
Enabling method chaining
Providing flexible method parameters
Options objects
Default parameter values
Callback functions
Customizable defaults
Creating plugins with the jQuery UI widget factory
Creating a widget
Destroying widgets
Enabling and disabling widgets
Accepting widget options
Adding methods
Triggering widget events
Plugin design recommendations
Distributing a plugin
Summary
Exercises
9. Advanced Selectors and Traversing
Selecting and traversing revisited
Dynamic table filtering
Striping table rows
Combining filtering and striping
More selector and traversal methods
Customizing and optimizing selectors
Writing a custom selector plugin
Selector performance
Sizzle selector implementation
Testing selector speed
DOM traversal under the hood
jQuery traversal properties
The DOM element stack
Writing a DOM traversal method plugin
DOM traversal performance
Improving performance using chaining
Improving performance with caching
Summary
Further reading
Exercises
10. Advanced Events
Revisiting events
Loading additional pages of data
Displaying data on hover
Event delegation
Using jQuery's delegation capabilities
Choosing a delegation scope
Delegating early
Defining custom events
Infinite scrolling
Custom event parameters
Throttling events
Other ways to perform throttling
Extending events
More about special events
Summary
Further reading
Exercises
11. Advanced Effects
Animation revisited
Observing and interrupting animations
Determining the animation state
Halting a running animation
Caution when halting animations
Using global effect properties
Disabling all effects
Defining effect durations
Multi-property easing
Using deferred objects
Animation promises
Taking fine-grained control of animations
Summary
Further reading
Exercises
12. Advanced DOM Manipulation
Sorting table rows
Sorting tables on the server
Sorting tables using Ajax
Sorting tables within the browser
Moving and inserting elements revisited
Adding links around existing text
Sorting simple JavaScript arrays
Sorting DOM elements
Storing data alongside DOM elements
Performing additional pre-computation
Storing non-string data
Alternating sort directions
Using HTML5 custom data attributes
Sorting and building rows with JSON
Modifying the JSON object
Rebuilding content on demand
Revisiting attribute manipulation
Using shorthand element creation syntax
DOM manipulation hooks
Writing a CSS hook
Summary
Further reading
Exercises
13. Advanced Ajax
Implementing progressive enhancement with Ajax
Harvesting JSONP data
Handling Ajax errors
Using the jqXHR object
Visit https://textbookfull.com
now to explore a rich
collection of eBooks, textbook
and enjoy exciting offers!
Ajax promises
Caching responses
Throttling Ajax requests
Extending Ajax capabilities
Data type converters
Adding Ajax prefilters
Defining alternate transports
Summary
Further reading
Exercises
Appnedix A – Testing JavaScript with QUnit
Downloading QUnit
Setting up the document
Organizing tests
Adding and running tests
Asynchronous testing
Other types of tests
Practical considerations
Further reading
Summary
Appendix B – Quick Reference
Selector expressions
Simple CSS
Position among siblings
Position among matched elements
Attributes
Forms
Miscellaneous selectors
DOM traversal methods
Filtering
Descendants
Siblings
Ancestors
Collection manipulation
Working with selected elements
Event methods
Binding
Shorthand binding
Triggering
Shorthand triggering
Utility
Effect methods
Predefined effects
Custom animations
Queue manipulation
DOM manipulation methods
Attributes and properties
Content
CSS
Dimensions
Insertion
Replacement
Removal
Copying
Data
Ajax methods
Issuing requests
Request monitoring
Configuration
Utilities
Deferred objects
Object creation
Methods of deferred objects
Methods of promise objects
Miscellaneous properties and functions
Properties of the jQuery object
Arrays and objects
Object introspection
Other
Preface
I started using jQuery in 2007, and I'm still using it today. Granted, a
lot has happened between now and then: new JavaScript libraries,
more consistency across browsers, and enhancements to JavaScript
itself. The one thing that hasn't changed in 10 years is the
expressiveness and conciseness of jQuery. Even with all the new
hotness out there today, jQuery remains the go-to tool of choice for
getting work done quickly, and efficiently.

This book has a long history behind it, and it remains intact in its
fifth edition. It has been a successful book because it is straight to
the point and easy to follow. I've done my best to preserve what has
worked so well for this book. My goal is to modernize learning
jQuery for the current web-development landscape.
What this book covers
Chapter 1,Getting Started, gets your feet wet with the jQuery
JavaScript library. The chapter begins with a description of jQuery
and what it can do for you. It then walks you through downloading
and setting up the library as well as writing your first script.

Chapter 2,Selecting Elements, teaches you how to use jQuery's


selector expressions and DOM-traversal methods to find elements on
the page, wherever they may be. You'll use jQuery to apply styling
to a diverse set of page elements, sometimes in a way that pure CSS
cannot.

Chapter 3, Handling Events, walks you through jQuery's event-


handling mechanism to fire off behaviors when browser events
occur. You'll see how jQuery makes it easy to attach events to
elements unobtrusively, even before the page finishes loading. Also,
you'll get an overview of deeper topics, such as event bubbling,
delegation, and namespacing.

Styling and Animating, introduces you to jQuery's


Chapter 4,
animation techniques and how to hide, show, and move page
elements with effects that are both useful and pleasing to the eye.

Chapter 5,Manipulating the DOM, teaches you how to change your


page on command. This chapter will also teach you how to alter the
very structure of an HTML document as well as adding to its content
on the fly.

Sending Data with Ajax, walks you through many ways in


Chapter 6,
which jQuery makes it easy to access server-side functionality
without resorting to clunky page refreshes. With the basic
components of the library well in hand, you will be ready to explore
how the library can expand to fit your needs.
Random documents with unrelated
content Scribd suggests to you:
The Project Gutenberg eBook of Saknarth
This ebook is for the use of anyone anywhere in the United States
and most other parts of the world at no cost and with almost no
restrictions whatsoever. You may copy it, give it away or re-use it
under the terms of the Project Gutenberg License included with this
ebook or online at www.gutenberg.org. If you are not located in the
United States, you will have to check the laws of the country where
you are located before using this eBook.

Title: Saknarth

Author: Donald A. Wollheim

Release date: March 21, 2024 [eBook #73218]

Language: English

Original publication: New York, NY: Columbia Publications Inc, 1942

Credits: Greg Weeks, Mary Meehan and the Online Distributed


Proofreading Team at http://www.pgdp.net

*** START OF THE PROJECT GUTENBERG EBOOK SAKNARTH


***
SAKNARTH

By MILLARD VERNE GORDON

(Author of "The Planet of Illusion," "Revolving World," etc.)

The Master Astrologer was willing to give his


life—if only the torch of what little learning
existed in the land could be passed on.

[Transcriber's Note: This etext was produced from


Science Fiction Quarterly Spring 1942.
Extensive research did not uncover any evidence that
the U.S. copyright on this publication was renewed.]
"The lights upon the Morning Star." How well he remembered that
phrase. Twenty years it must have been since Kwarit had whispered
it to him, at the great trial where they had accused Kwarit of heeding
the signals of the Evil One.
As he had been led away, he had managed to whisper to young
Saknarth, then a mere neophyte, the strange phrase that had
lingered, echoing and reechoing through the young student's mind
all these years. From neophyte to the Master Astrologer of the
Imperial Observatory. It would be more than forty years by the third
planet's hurried pace. Did the lights still glow upon the Morning Star?
Saknarth glanced over at the chronometer. It would be a half hour
before the Morning Star rose. There was work to be done; he must
prepare the day's horoscope. He laughed to himself. What fools
priests and rulers must be to believe that the stars foretold the future.
What an upset if they learned how it all originated in the minds of
astrologers—no more the guesswork based upon a knowledge of the
past. Well, so far, thought Saknarth, my forecasts have been more or
less true.
Seating himself at a little desk in the shaded glow of an oil lamp, he
proceeded to write his prophecies, taking care to befog them with
astrological formulae and mystic bosh.
A half hour passed. Already a dim light glowed deep in the eastern
horizon. Now from low in the sky a blue star gleamed, a steady
glowing mote of light heralding the dawn. The Morning Star.
Saknarth pushed back his stool from the desk and stood up. He
glanced through the open panel at the planet. Then over to the
largest telescope in the observatory, a twenty inch reflector. He
applied his single round eye to the eyepiece and gazed at great
Kurnal, largest of the inner planets.
A crescent of brilliant light, the major part of it dark. It was nearing its
closest, Saknarth thought. The sun was behind it and the night side
was presented to Mars. The thin crescent glowed brightly. He could
see dimly dark shading of landmasses in that area, but the rest was
dark, unlit.
Saknarth reflected. Here it was that Kwarit had seen his lights, in the
dark of the Earth. But then he was using a bigger instrument; he was
using the great fifty inch reflector, largest ever made. That had been
removed. The priests had said that it was accursed of the Devil and
they had taken it and placed it in the Hall of Evil Things. None were
permitted to look through it. Saknarth swore softly to himself. Oh for
a glimpse through it, for a single glance—
The day was nearly over. Saknarth had delivered his horoscope to
the Emperor and had served his moments at the court; now he was
wending his way homeward through the narrow streets of Lucas
Phoenicus. He saw before him a great building, the Imperial
Museum. Suddenly a thought struck him; he would like to see
Kwarit's telescope.
Accordingly he entered the vast institute. Through the long passages
he went, past the exhibits of stuffed beasts and catalogued plants,
and the many rooms of ancient empires and lost peoples. Through
all these he went into the wing where lay the Hall of Evil Things. This
was well guarded he thought. Two helmeted and cuirassed soldiers
stood before the entrance. Their single eyes gleamed suspiciously at
all passers by, their stumpy horns capped by dangerous looking
steel spikes, their hands resting upon huge maces at their sides.
They halted Saknarth as he sought to enter, but he showed them his
credentials as a member of the Imperial Court and was permitted to
pass. Down the hall he strode, past cases of forbidden books, evil
robes, devil haunted, and mummeries of all kinds to the very end
where, behind an iron railing, stood the telescope.

The Master Astrologer leaned on the railing and stared at it. The
huge mirror, kept in condition by the attendants, gleamed brilliantly.
The great instrument at the end of the hall near the window, the
Eastern sky visible. The sun rose in sight of that window, and the
Morning Star. From where the telescope stood, it should be possible
to train it on the planet.
The Master Astrologer became excited; he glanced around hurriedly
for fear someone might have witnessed. Then carefully he took in all
details of the lay of the room, turned and walked out.
It was dark. A chill wind from the deserts swept through the deserted
streets of the Martian capital. A period of deepest silence when even
the eternal thumping of the canal pumps died down to a dull distant
hum. In the dim stretches of the hour before dawn the city was at its
quietest. On the street corners a few sleepy guards leaned against
walls and closed their single great eyes in rest for a moment.
Down a side street in the darkest shadows slipped a figure. Dark
cloaked, treading upon cushioned toes, it crept from building to
building, keeping as much as possible in the recesses of arches of
the little carved balconies Martian buildings are wont to have. Finally
the figure came to a halt in a doorway. It stood for a moment looking
around to make sure of the place and then producing a long thin
instrument, picked the lock and rolled aside the door.
Saknarth stepped softly inside the dark hallway, rolled the door shut.
He listened a moment, then assured by silence tip-toed forward up
the incline that he knew lay to one side of the hall. Up he climbed.
Reaching a floor, he turned quickly and groped for the next incline,
reached it and ascended again. Soon he came to where there were
no more floors, and pushing aside a trap door, stepped out on the
roof.
It was not so dark up here. The dim lights of the two tiny moons
added to the lights of the myriad stars to cast a misty white glow
upon objects.
The astrologer tip-toed silently across the roof onto an adjoining one.
On he progressed to come finally to the great wall of a building
looming up above. Set in this wall was a large window about fifteen
feet above his head.
Saknarth groped under his cloak, drew out a long thin rope. To the
end of this he fastened a small, strong double hook making an
effective grappling iron.
He stepped back, whirled it around his head and tossed it upwards.
It struck the wall just below the sill, bounded back. He waited and
listened; no one had heard. Again he tossed the rope; and this time
the hook caught in the carved decorations of the window sill.
Saknarth pulled; the rope held. He whispered a short prayer and
grasping high on the rope raised his feet off the ground. Immediately
he swung inward to touch the wall with his feet. Then, slowly and
laboriously, climbed up the rope.
Reaching the sill, Saknarth threw a leg over and lay quiet for a
moment. Still safe. He drew out his lock-picking instrument and
easily opened the window enough to permit him to creep through
and drop silently on the other side.
The long hall was dark and quiet. No one had heard him. He looked
up. There next to him loomed the great telescope.

Saknarth stepped over the railing and perched himself on the


observer's seat. He polished the eyepiece fondly, grasped the hand
wheels. Turning these, he swung the heavy instrument downwards,
down till it faced the open window and the coming dawn.
There, low in the heavens hung the Morning Star. It glowed brightly
and seemed to beckon and encourage him on. He set the readings
on the clockwork adjustment, applied his eye to the lens.
A brilliant crescent shining with the blue green radiance of the third
planet. Much larger than ever the Master Astrologer had seen it. He
stared eagerly at the now sharply outlined land masses visible,
noting the green color of some and wondering if it could be the green
of vegetation.
He drew his gaze from the bright crescent to stare at the dark
portion. It was not truly dark. A dim grey light seemed to show up
vague suggestions of continents and seas, the reflected light of
Kurnal's huge moon, he thought. But the lights: he must look for the
lights.
Long he stared and suddenly he saw them. A tiny dot of white light
glowing in the center of the dark disc. Now several others caught his
view; his heart thumped wildly. The lights were there; Kwarit had
spoken truthfully. He stared avidly at them. Cities, he thought: could
they be cities? He dismissed the thought as soon as it had come as
being foolish. There were many. He tried to count them. Most were in
the Northern half, yet there were one or two in the southern zone,
too. Many on top and a few below. A strange sense of having seen
that design before entered his mind. The arrangement was peculiar;
he studied it closely.
The Sign of Dallon! He recognized it. The ideograph of Dallon the
prophet was exactly like that. The Sign of Dallon on the face of
Kurnal. The prophecy. He remembered it from his student days.
Dallon, one of the ancient founders of the priesthood, had declared;
"Man shall be humble and bow down to the gods; he shall revere
those who are their priests and prophets; he shall not deem to
impose upon their domains and shall support and obey them. This
shall be until the Sign of Dallon shall appear on the face of the
Morning Star. Then will Man rise above the gods. And that time is
Never."
The time had come; the priesthood should no longer enslave
mankind. Now was learning and enlightenment to come to the
people to give them conquest over fear and misery. And he,
Saknarth, must tell the multitudes.
He continued thus, in his reveries, his lone eye glued to the great
instrument, his mind seething with a multitude of thoughts.
A step sounded in the darkness. A hand was laid roughly upon his
shoulder. He was jerked away from the eyepiece to face the two
guards that had been patrolling the halls of the Museum. Saknarth
opened his mouth. "I have seen on Kurnal—" he began, but a soldier
clapped his hand over the astrologer's mouth and said gruffly,
"Silence. Let not your mouth tell of the blasphemies seen through
this instrument of the Devil." They gagged Saknarth and bound his
hands and led him out of the hall, turned him over to imprisonment.
His trial was short and speedy. During the entire proceedings he
remained gagged and bound so as to be unable to utter the
blasphemies he might have seen. The priests passed quick
judgment upon him for had he not been caught peering through the
accursed instrument? There was naught for such but execution.
The guards led him out of the courtroom that morning and took him
to a cell overlooking the place of execution. Here for the first time he
was ungagged and unbound. The door rolled shut upon him and the
locks clicked.
Saknarth gazed out of the barred window. The street was many feet
below. He could not possibly shout down to the passers-by what he
had learned. He looked wildly around him.
On a little table was parchment and crayon. He grasped these and
quickly drew a series of ideographs. He wrote furiously for he had
not much time.
He wrote about the lights and the Sign. He exhorted the reader to
carry it to the astrologers and the men of learning. He declared the
time had come to rise and strike for freedom.
Rising, Saknarth went over to the window, waiting. There were many
going through the street below, but he waited for the best. There! A
young man passing now. Upon his arm was the circle insignia of the
Society of the One God. An intelligent look was in his eye.
Saknarth grasped the rolled manuscript and hurled it. Straight before
the youth it fell. The young man picked it up, drew aside into a
doorway opposite to read it. Hopefully the prisoner watched the
expression on the youth's face, saw light spring into his eyes, saw a
smile and a determined line spread over his face.
The reader looked up. Straight into Saknarth's eyes he gazed, then
raised his hand in salute and hurried off down the street.
The Master Astrologer sat down upon his stool, waiting for the
executioners. He was ready to die now; he had done his work.
*** END OF THE PROJECT GUTENBERG EBOOK SAKNARTH ***

Updated editions will replace the previous one—the old editions will
be renamed.

Creating the works from print editions not protected by U.S.


copyright law means that no one owns a United States copyright in
these works, so the Foundation (and you!) can copy and distribute it
in the United States without permission and without paying copyright
royalties. Special rules, set forth in the General Terms of Use part of
this license, apply to copying and distributing Project Gutenberg™
electronic works to protect the PROJECT GUTENBERG™ concept
and trademark. Project Gutenberg is a registered trademark, and
may not be used if you charge for an eBook, except by following the
terms of the trademark license, including paying royalties for use of
the Project Gutenberg trademark. If you do not charge anything for
copies of this eBook, complying with the trademark license is very
easy. You may use this eBook for nearly any purpose such as
creation of derivative works, reports, performances and research.
Project Gutenberg eBooks may be modified and printed and given
away—you may do practically ANYTHING in the United States with
eBooks not protected by U.S. copyright law. Redistribution is subject
to the trademark license, especially commercial redistribution.

START: FULL LICENSE


THE FULL PROJECT GUTENBERG LICENSE
PLEASE READ THIS BEFORE YOU DISTRIBUTE OR USE THIS WORK

To protect the Project Gutenberg™ mission of promoting the free


distribution of electronic works, by using or distributing this work (or
any other work associated in any way with the phrase “Project
Gutenberg”), you agree to comply with all the terms of the Full
Project Gutenberg™ License available with this file or online at
www.gutenberg.org/license.

Section 1. General Terms of Use and


Redistributing Project Gutenberg™
electronic works
1.A. By reading or using any part of this Project Gutenberg™
electronic work, you indicate that you have read, understand, agree
to and accept all the terms of this license and intellectual property
(trademark/copyright) agreement. If you do not agree to abide by all
the terms of this agreement, you must cease using and return or
destroy all copies of Project Gutenberg™ electronic works in your
possession. If you paid a fee for obtaining a copy of or access to a
Project Gutenberg™ electronic work and you do not agree to be
bound by the terms of this agreement, you may obtain a refund from
the person or entity to whom you paid the fee as set forth in
paragraph 1.E.8.

1.B. “Project Gutenberg” is a registered trademark. It may only be


used on or associated in any way with an electronic work by people
who agree to be bound by the terms of this agreement. There are a
few things that you can do with most Project Gutenberg™ electronic
works even without complying with the full terms of this agreement.
See paragraph 1.C below. There are a lot of things you can do with
Project Gutenberg™ electronic works if you follow the terms of this
agreement and help preserve free future access to Project
Gutenberg™ electronic works. See paragraph 1.E below.
1.C. The Project Gutenberg Literary Archive Foundation (“the
Foundation” or PGLAF), owns a compilation copyright in the
collection of Project Gutenberg™ electronic works. Nearly all the
individual works in the collection are in the public domain in the
United States. If an individual work is unprotected by copyright law in
the United States and you are located in the United States, we do
not claim a right to prevent you from copying, distributing,
performing, displaying or creating derivative works based on the
work as long as all references to Project Gutenberg are removed. Of
course, we hope that you will support the Project Gutenberg™
mission of promoting free access to electronic works by freely
sharing Project Gutenberg™ works in compliance with the terms of
this agreement for keeping the Project Gutenberg™ name
associated with the work. You can easily comply with the terms of
this agreement by keeping this work in the same format with its
attached full Project Gutenberg™ License when you share it without
charge with others.

1.D. The copyright laws of the place where you are located also
govern what you can do with this work. Copyright laws in most
countries are in a constant state of change. If you are outside the
United States, check the laws of your country in addition to the terms
of this agreement before downloading, copying, displaying,
performing, distributing or creating derivative works based on this
work or any other Project Gutenberg™ work. The Foundation makes
no representations concerning the copyright status of any work in
any country other than the United States.

1.E. Unless you have removed all references to Project Gutenberg:

1.E.1. The following sentence, with active links to, or other


immediate access to, the full Project Gutenberg™ License must
appear prominently whenever any copy of a Project Gutenberg™
work (any work on which the phrase “Project Gutenberg” appears, or
with which the phrase “Project Gutenberg” is associated) is
accessed, displayed, performed, viewed, copied or distributed:
This eBook is for the use of anyone anywhere in the United
States and most other parts of the world at no cost and with
almost no restrictions whatsoever. You may copy it, give it away
or re-use it under the terms of the Project Gutenberg License
included with this eBook or online at www.gutenberg.org. If you
are not located in the United States, you will have to check the
laws of the country where you are located before using this
eBook.

1.E.2. If an individual Project Gutenberg™ electronic work is derived


from texts not protected by U.S. copyright law (does not contain a
notice indicating that it is posted with permission of the copyright
holder), the work can be copied and distributed to anyone in the
United States without paying any fees or charges. If you are
redistributing or providing access to a work with the phrase “Project
Gutenberg” associated with or appearing on the work, you must
comply either with the requirements of paragraphs 1.E.1 through
1.E.7 or obtain permission for the use of the work and the Project
Gutenberg™ trademark as set forth in paragraphs 1.E.8 or 1.E.9.

1.E.3. If an individual Project Gutenberg™ electronic work is posted


with the permission of the copyright holder, your use and distribution
must comply with both paragraphs 1.E.1 through 1.E.7 and any
additional terms imposed by the copyright holder. Additional terms
will be linked to the Project Gutenberg™ License for all works posted
with the permission of the copyright holder found at the beginning of
this work.

1.E.4. Do not unlink or detach or remove the full Project


Gutenberg™ License terms from this work, or any files containing a
part of this work or any other work associated with Project
Gutenberg™.

1.E.5. Do not copy, display, perform, distribute or redistribute this


electronic work, or any part of this electronic work, without
prominently displaying the sentence set forth in paragraph 1.E.1 with
active links or immediate access to the full terms of the Project
Gutenberg™ License.
1.E.6. You may convert to and distribute this work in any binary,
compressed, marked up, nonproprietary or proprietary form,
including any word processing or hypertext form. However, if you
provide access to or distribute copies of a Project Gutenberg™ work
in a format other than “Plain Vanilla ASCII” or other format used in
the official version posted on the official Project Gutenberg™ website
(www.gutenberg.org), you must, at no additional cost, fee or expense
to the user, provide a copy, a means of exporting a copy, or a means
of obtaining a copy upon request, of the work in its original “Plain
Vanilla ASCII” or other form. Any alternate format must include the
full Project Gutenberg™ License as specified in paragraph 1.E.1.

1.E.7. Do not charge a fee for access to, viewing, displaying,


performing, copying or distributing any Project Gutenberg™ works
unless you comply with paragraph 1.E.8 or 1.E.9.

1.E.8. You may charge a reasonable fee for copies of or providing


access to or distributing Project Gutenberg™ electronic works
provided that:

• You pay a royalty fee of 20% of the gross profits you derive from
the use of Project Gutenberg™ works calculated using the
method you already use to calculate your applicable taxes. The
fee is owed to the owner of the Project Gutenberg™ trademark,
but he has agreed to donate royalties under this paragraph to
the Project Gutenberg Literary Archive Foundation. Royalty
payments must be paid within 60 days following each date on
which you prepare (or are legally required to prepare) your
periodic tax returns. Royalty payments should be clearly marked
as such and sent to the Project Gutenberg Literary Archive
Foundation at the address specified in Section 4, “Information
about donations to the Project Gutenberg Literary Archive
Foundation.”

• You provide a full refund of any money paid by a user who


notifies you in writing (or by e-mail) within 30 days of receipt that
s/he does not agree to the terms of the full Project Gutenberg™
License. You must require such a user to return or destroy all
copies of the works possessed in a physical medium and
discontinue all use of and all access to other copies of Project
Gutenberg™ works.

• You provide, in accordance with paragraph 1.F.3, a full refund of


any money paid for a work or a replacement copy, if a defect in
the electronic work is discovered and reported to you within 90
days of receipt of the work.

• You comply with all other terms of this agreement for free
distribution of Project Gutenberg™ works.

1.E.9. If you wish to charge a fee or distribute a Project Gutenberg™


electronic work or group of works on different terms than are set
forth in this agreement, you must obtain permission in writing from
the Project Gutenberg Literary Archive Foundation, the manager of
the Project Gutenberg™ trademark. Contact the Foundation as set
forth in Section 3 below.

1.F.

1.F.1. Project Gutenberg volunteers and employees expend


considerable effort to identify, do copyright research on, transcribe
and proofread works not protected by U.S. copyright law in creating
the Project Gutenberg™ collection. Despite these efforts, Project
Gutenberg™ electronic works, and the medium on which they may
be stored, may contain “Defects,” such as, but not limited to,
incomplete, inaccurate or corrupt data, transcription errors, a
copyright or other intellectual property infringement, a defective or
damaged disk or other medium, a computer virus, or computer
codes that damage or cannot be read by your equipment.

1.F.2. LIMITED WARRANTY, DISCLAIMER OF DAMAGES - Except


for the “Right of Replacement or Refund” described in paragraph
1.F.3, the Project Gutenberg Literary Archive Foundation, the owner
of the Project Gutenberg™ trademark, and any other party
distributing a Project Gutenberg™ electronic work under this
agreement, disclaim all liability to you for damages, costs and
expenses, including legal fees. YOU AGREE THAT YOU HAVE NO
REMEDIES FOR NEGLIGENCE, STRICT LIABILITY, BREACH OF
WARRANTY OR BREACH OF CONTRACT EXCEPT THOSE
PROVIDED IN PARAGRAPH 1.F.3. YOU AGREE THAT THE
FOUNDATION, THE TRADEMARK OWNER, AND ANY
DISTRIBUTOR UNDER THIS AGREEMENT WILL NOT BE LIABLE
TO YOU FOR ACTUAL, DIRECT, INDIRECT, CONSEQUENTIAL,
PUNITIVE OR INCIDENTAL DAMAGES EVEN IF YOU GIVE
NOTICE OF THE POSSIBILITY OF SUCH DAMAGE.

1.F.3. LIMITED RIGHT OF REPLACEMENT OR REFUND - If you


discover a defect in this electronic work within 90 days of receiving it,
you can receive a refund of the money (if any) you paid for it by
sending a written explanation to the person you received the work
from. If you received the work on a physical medium, you must
return the medium with your written explanation. The person or entity
that provided you with the defective work may elect to provide a
replacement copy in lieu of a refund. If you received the work
electronically, the person or entity providing it to you may choose to
give you a second opportunity to receive the work electronically in
lieu of a refund. If the second copy is also defective, you may
demand a refund in writing without further opportunities to fix the
problem.

1.F.4. Except for the limited right of replacement or refund set forth in
paragraph 1.F.3, this work is provided to you ‘AS-IS’, WITH NO
OTHER WARRANTIES OF ANY KIND, EXPRESS OR IMPLIED,
INCLUDING BUT NOT LIMITED TO WARRANTIES OF
MERCHANTABILITY OR FITNESS FOR ANY PURPOSE.

1.F.5. Some states do not allow disclaimers of certain implied


warranties or the exclusion or limitation of certain types of damages.
If any disclaimer or limitation set forth in this agreement violates the
law of the state applicable to this agreement, the agreement shall be
interpreted to make the maximum disclaimer or limitation permitted
by the applicable state law. The invalidity or unenforceability of any
provision of this agreement shall not void the remaining provisions.

You might also like