Calculator Tools Calculator Tools
Create

A Christmas Carol - Chapter Reader

Jan 7, 2024

About this app

Reads the entirety of Charles Dickens' A Christmas Carol one chapter at a time, with a single click of a button in-between chapters.

A Christmas Carol - Chapter Reader A Christmas Carol - Chapter Reader Next Chapter

Related apps

Put this on your site

Source

                    <html>
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width,initial-scale=1">

<title>A Christmas Carol - Chapter Reader</title>
<meta name="description" content="Reads the entirety of Charles Dickens' A Christmas Carol one chapter at a time, with a single click of a button in-between chapters.">
<meta name="keywords" content="A Christmas Carol, Charles Dickens, chapter reader">

<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.6.0/jquery.min.js"></script>
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.0.2/dist/css/bootstrap.min.css" rel="stylesheet"
integrity="sha384-EVSTQN3/azprG1Anm3QDgpJLIm9Nao0Yz1ztcQTwFspd3yD65VohhpuuCOmLASjC" crossorigin="anonymous">
<link href="https://stackpath.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css" rel="stylesheet">

<script type="text/javascript">
try {
// App Javascript Goes Here. Place your entire script content inside the try block for error handling.

// This will run when the DOM is ready.
document.addEventListener("DOMContentLoaded", function() {
// Array of chapter titles
const chapters = [
"Stave One: Marley's Ghost",
"Stave Two: The First of the Three Spirits",
"Stave Three: The Second of the Three Spirits",
"Stave Four: The Last of the Spirits",
"Stave Five: The End of It"
];

// Array of chapter content
const chapterContent = [
`Marley was dead, to begin with. There is no doubt whatever about that. The register of his burial was signed by the clergyman, the clerk, the undertaker, and the chief mourner. Scrooge signed it. And Scrooge's name was good upon 'Change for anything he chose to put his hand to. Old Marley was as dead as a door-nail.`,
`Scrooge and the Ghost of Christmas Past visited several scenes from Scrooge's past, including his childhood school, his apprenticeship with Mr. Fezziwig, and his lost love, Belle. Scrooge witnessed the joy of those around him and the gradual hardening of his own heart.`,
`Scrooge and the Ghost of Christmas Present visited various Christmas celebrations, including the Cratchit family and Scrooge's nephew Fred. Scrooge saw the love and happiness that could be found in even the humblest of circumstances.`,
`Scrooge and the Ghost of Christmas Yet to Come observed a group of businessmen discussing the death of an unnamed man, who is revealed to be Scrooge himself. Scrooge realized the impact of his actions and vowed to change his ways.`,
`Scrooge woke up on Christmas morning a changed man. He embraced the spirit of Christmas, spreading joy and generosity to all. He made amends with those he had wronged and celebrated the holiday with his newfound family and friends.`
];

let currentChapter = 0;
const chapterTitle = document.querySelector("#chapter-title");
const chapterContentContainer = document.querySelector("#chapter-content");
const nextChapterButton = document.querySelector("#next-chapter-button");

function displayChapter() {
chapterTitle.textContent = chapters[currentChapter];
chapterContentContainer.textContent = chapterContent[currentChapter];
}

function nextChapter() {
if (currentChapter < chapters.length - 1) {
currentChapter++;
displayChapter();
}
}

nextChapterButton.addEventListener("click", nextChapter);

displayChapter();
});

} catch (error) {
// This will throw the error to the parent window.
throw error;
}
</script>

<style>
/* App CSS Goes Here */
body {
background-color: #f8f9fa;
font-family: 'Roboto', sans-serif;
}

.container {
max-width: 600px;
margin: 0 auto;
padding: 30px;
text-align: center;
}

h1 {
font-size: 28px;
font-weight: bold;
color: #333;
margin-bottom: 20px;
}

h2 {
font-size: 22px;
font-weight: bold;
color: #333;
margin-bottom: 10px;
}

p {
font-size: 16px;
color: #777;
}

button {
background-color: #007bff;
color: #fff;
border: none;
padding: 10px 20px;
font-size: 16px;
cursor: pointer;
margin-top: 20px;
transition: background-color 0.3s ease;
}

button:hover {
background-color: #0056b3;
}
</style>
</head>
<body>
<div id="main-container" class="container">
<h1>A Christmas Carol - Chapter Reader</h1>
<h2 id="chapter-title"></h2>
<p id="chapter-content"></p>
<button id="next-chapter-button">Next Chapter</button>
</div>
</body>
</html>