MP13 progress
parent
c798ae5486
commit
414a06957d
@ -0,0 +1,53 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?><!-- You may freely edit this file. See commented blocks below for --><!-- some examples of how to customize the build. --><!-- (If you delete it and reopen the project it will be recreated.) --><!-- By default, only the Clean and Build commands use this build script. --><project name="JavaFXApplication1" default="default" basedir="." xmlns:fx="javafx:com.sun.javafx.tools.ant">
|
||||||
|
<description>Builds, tests, and runs the project JavaFXApplication1.</description>
|
||||||
|
<import file="nbproject/build-impl.xml"/>
|
||||||
|
<!--
|
||||||
|
|
||||||
|
There exist several targets which are by default empty and which can be
|
||||||
|
used for execution of your tasks. These targets are usually executed
|
||||||
|
before and after some main targets. Those of them relevant for JavaFX project are:
|
||||||
|
|
||||||
|
-pre-init: called before initialization of project properties
|
||||||
|
-post-init: called after initialization of project properties
|
||||||
|
-pre-compile: called before javac compilation
|
||||||
|
-post-compile: called after javac compilation
|
||||||
|
-pre-compile-test: called before javac compilation of JUnit tests
|
||||||
|
-post-compile-test: called after javac compilation of JUnit tests
|
||||||
|
-pre-jfx-jar: called before FX SDK specific <fx:jar> task
|
||||||
|
-post-jfx-jar: called after FX SDK specific <fx:jar> task
|
||||||
|
-pre-jfx-deploy: called before FX SDK specific <fx:deploy> task
|
||||||
|
-post-jfx-deploy: called after FX SDK specific <fx:deploy> task
|
||||||
|
-pre-jfx-native: called just after -pre-jfx-deploy if <fx:deploy> runs in native packaging mode
|
||||||
|
-post-jfx-native: called just after -post-jfx-deploy if <fx:deploy> runs in native packaging mode
|
||||||
|
-post-clean: called after cleaning build products
|
||||||
|
|
||||||
|
(Targets beginning with '-' are not intended to be called on their own.)
|
||||||
|
|
||||||
|
Example of inserting a HTML postprocessor after javaFX SDK deployment:
|
||||||
|
|
||||||
|
<target name="-post-jfx-deploy">
|
||||||
|
<basename property="jfx.deployment.base" file="${jfx.deployment.jar}" suffix=".jar"/>
|
||||||
|
<property name="jfx.deployment.html" location="${jfx.deployment.dir}${file.separator}${jfx.deployment.base}.html"/>
|
||||||
|
<custompostprocess>
|
||||||
|
<fileset dir="${jfx.deployment.html}"/>
|
||||||
|
</custompostprocess>
|
||||||
|
</target>
|
||||||
|
|
||||||
|
Example of calling an Ant task from JavaFX SDK. Note that access to JavaFX SDK Ant tasks must be
|
||||||
|
initialized; to ensure this is done add the dependence on -check-jfx-sdk-version target:
|
||||||
|
|
||||||
|
<target name="-post-jfx-jar" depends="-check-jfx-sdk-version">
|
||||||
|
<echo message="Calling jar task from JavaFX SDK"/>
|
||||||
|
<fx:jar ...>
|
||||||
|
...
|
||||||
|
</fx:jar>
|
||||||
|
</target>
|
||||||
|
|
||||||
|
For more details about JavaFX SDK Ant tasks go to
|
||||||
|
http://docs.oracle.com/javafx/2/deployment/jfxpub-deployment.htm
|
||||||
|
|
||||||
|
For list of available properties check the files
|
||||||
|
nbproject/build-impl.xml and nbproject/jfx-impl.xml.
|
||||||
|
|
||||||
|
-->
|
||||||
|
</project>
|
@ -0,0 +1,3 @@
|
|||||||
|
Manifest-Version: 1.0
|
||||||
|
X-COMMENT: Main-Class will be added automatically by build
|
||||||
|
|
File diff suppressed because it is too large
Load Diff
@ -0,0 +1,2 @@
|
|||||||
|
# Do not modify this property in this configuration. It can be re-generated.
|
||||||
|
$label=Run as WebStart
|
@ -0,0 +1,2 @@
|
|||||||
|
# Do not modify this property in this configuration. It can be re-generated.
|
||||||
|
$label=Run in Browser
|
@ -0,0 +1,8 @@
|
|||||||
|
build.xml.data.CRC32=19a3a13e
|
||||||
|
build.xml.script.CRC32=e354da3e
|
||||||
|
build.xml.stylesheet.CRC32=f85dc8f2@1.105.0.48
|
||||||
|
# This file is used by a NetBeans-based IDE to track changes in generated files such as build-impl.xml.
|
||||||
|
# Do not edit this file. You may delete it but then the IDE will never regenerate such files for you.
|
||||||
|
nbproject/build-impl.xml.data.CRC32=19a3a13e
|
||||||
|
nbproject/build-impl.xml.script.CRC32=6c0e2539
|
||||||
|
nbproject/build-impl.xml.stylesheet.CRC32=12e0a6c2@1.105.0.48
|
File diff suppressed because it is too large
Load Diff
@ -0,0 +1,120 @@
|
|||||||
|
annotation.processing.enabled=true
|
||||||
|
annotation.processing.enabled.in.editor=false
|
||||||
|
annotation.processing.processor.options=
|
||||||
|
annotation.processing.processors.list=
|
||||||
|
annotation.processing.run.all.processors=true
|
||||||
|
annotation.processing.source.output=${build.generated.sources.dir}/ap-source-output
|
||||||
|
application.title=JavaFXApplication1
|
||||||
|
application.vendor=caleb
|
||||||
|
build.classes.dir=${build.dir}/classes
|
||||||
|
build.classes.excludes=**/*.java,**/*.form
|
||||||
|
# This directory is removed when the project is cleaned:
|
||||||
|
build.dir=build
|
||||||
|
build.generated.dir=${build.dir}/generated
|
||||||
|
build.generated.sources.dir=${build.dir}/generated-sources
|
||||||
|
# Only compile against the classpath explicitly listed here:
|
||||||
|
build.sysclasspath=ignore
|
||||||
|
build.test.classes.dir=${build.dir}/test/classes
|
||||||
|
build.test.results.dir=${build.dir}/test/results
|
||||||
|
compile.on.save=true
|
||||||
|
compile.on.save.unsupported.javafx=true
|
||||||
|
# Uncomment to specify the preferred debugger connection transport:
|
||||||
|
#debug.transport=dt_socket
|
||||||
|
debug.classpath=\
|
||||||
|
${run.classpath}
|
||||||
|
debug.modulepath=\
|
||||||
|
${run.modulepath}
|
||||||
|
debug.test.classpath=\
|
||||||
|
${run.test.classpath}
|
||||||
|
debug.test.modulepath=\
|
||||||
|
${run.test.modulepath}
|
||||||
|
# This directory is removed when the project is cleaned:
|
||||||
|
dist.dir=dist
|
||||||
|
dist.jar=${dist.dir}/JavaFXApplication1.jar
|
||||||
|
dist.javadoc.dir=${dist.dir}/javadoc
|
||||||
|
endorsed.classpath=
|
||||||
|
excludes=
|
||||||
|
includes=**
|
||||||
|
# Non-JavaFX jar file creation is deactivated in JavaFX 2.0+ projects
|
||||||
|
jar.archive.disabled=true
|
||||||
|
jar.compress=false
|
||||||
|
javac.classpath=
|
||||||
|
# Space-separated list of extra javac options
|
||||||
|
javac.compilerargs=
|
||||||
|
javac.deprecation=false
|
||||||
|
javac.modulepath=
|
||||||
|
javac.processormodulepath=
|
||||||
|
javac.processorpath=\
|
||||||
|
${javac.classpath}
|
||||||
|
javac.source=1.8
|
||||||
|
javac.target=1.8
|
||||||
|
javac.test.classpath=\
|
||||||
|
${javac.classpath}:\
|
||||||
|
${build.classes.dir}
|
||||||
|
javac.test.modulepath=\
|
||||||
|
${javac.modulepath}
|
||||||
|
javac.test.processorpath=\
|
||||||
|
${javac.test.classpath}
|
||||||
|
javadoc.additionalparam=
|
||||||
|
javadoc.author=false
|
||||||
|
javadoc.encoding=${source.encoding}
|
||||||
|
javadoc.noindex=false
|
||||||
|
javadoc.nonavbar=false
|
||||||
|
javadoc.notree=false
|
||||||
|
javadoc.private=false
|
||||||
|
javadoc.splitindex=true
|
||||||
|
javadoc.use=true
|
||||||
|
javadoc.version=false
|
||||||
|
javadoc.windowtitle=
|
||||||
|
javafx.application.implementation.version=1.0
|
||||||
|
javafx.binarycss=false
|
||||||
|
javafx.deploy.allowoffline=true
|
||||||
|
# If true, application update mode is set to 'background', if false, update mode is set to 'eager'
|
||||||
|
javafx.deploy.backgroundupdate=false
|
||||||
|
javafx.deploy.embedJNLP=true
|
||||||
|
javafx.deploy.includeDT=true
|
||||||
|
# Set true to prevent creation of temporary copy of deployment artifacts before each run (disables concurrent runs)
|
||||||
|
javafx.disable.concurrent.runs=false
|
||||||
|
# Set true to enable multiple concurrent runs of the same WebStart or Run-in-Browser project
|
||||||
|
javafx.enable.concurrent.external.runs=false
|
||||||
|
# This is a JavaFX project
|
||||||
|
javafx.enabled=true
|
||||||
|
javafx.fallback.class=com.javafx.main.NoJavaFXFallback
|
||||||
|
# Main class for JavaFX
|
||||||
|
javafx.main.class=javafxapplication1.JavaFXApplication1
|
||||||
|
javafx.preloader.class=
|
||||||
|
# This project does not use Preloader
|
||||||
|
javafx.preloader.enabled=false
|
||||||
|
javafx.preloader.jar.filename=
|
||||||
|
javafx.preloader.jar.path=
|
||||||
|
javafx.preloader.project.path=
|
||||||
|
javafx.preloader.type=none
|
||||||
|
# Set true for GlassFish only. Rebases manifest classpaths of JARs in lib dir. Not usable with signed JARs.
|
||||||
|
javafx.rebase.libs=false
|
||||||
|
javafx.run.height=600
|
||||||
|
javafx.run.width=800
|
||||||
|
# Pre-JavaFX 2.0 WebStart is deactivated in JavaFX 2.0+ projects
|
||||||
|
jnlp.enabled=false
|
||||||
|
# Main class for Java launcher
|
||||||
|
main.class=com.javafx.main.Main
|
||||||
|
# For improved security specify narrower Codebase manifest attribute to prevent RIAs from being repurposed
|
||||||
|
manifest.custom.codebase=*
|
||||||
|
# Specify Permissions manifest attribute to override default (choices: sandbox, all-permissions)
|
||||||
|
manifest.custom.permissions=
|
||||||
|
manifest.file=manifest.mf
|
||||||
|
meta.inf.dir=${src.dir}/META-INF
|
||||||
|
platform.active=JDK_1.8
|
||||||
|
run.classpath=\
|
||||||
|
${dist.jar}:\
|
||||||
|
${javac.classpath}:\
|
||||||
|
${build.classes.dir}
|
||||||
|
run.modulepath=\
|
||||||
|
${javac.modulepath}
|
||||||
|
run.test.classpath=\
|
||||||
|
${javac.test.classpath}:\
|
||||||
|
${build.test.classes.dir}
|
||||||
|
run.test.modulepath=\
|
||||||
|
${javac.test.modulepath}
|
||||||
|
source.encoding=UTF-8
|
||||||
|
src.dir=src
|
||||||
|
test.src.dir=test
|
@ -0,0 +1,26 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<project xmlns="http://www.netbeans.org/ns/project/1">
|
||||||
|
<type>org.netbeans.modules.java.j2seproject</type>
|
||||||
|
<configuration>
|
||||||
|
<buildExtensions xmlns="http://www.netbeans.org/ns/ant-build-extender/1">
|
||||||
|
<extension file="jfx-impl.xml" id="jfx3">
|
||||||
|
<dependency dependsOn="-jfx-copylibs" target="-post-jar"/>
|
||||||
|
<dependency dependsOn="-rebase-libs" target="-post-jar"/>
|
||||||
|
<dependency dependsOn="jfx-deployment" target="-post-jar"/>
|
||||||
|
<dependency dependsOn="jar" target="debug"/>
|
||||||
|
<dependency dependsOn="jar" target="profile"/>
|
||||||
|
<dependency dependsOn="jar" target="run"/>
|
||||||
|
</extension>
|
||||||
|
</buildExtensions>
|
||||||
|
<data xmlns="http://www.netbeans.org/ns/j2se-project/3">
|
||||||
|
<name>JavaFXApplication1</name>
|
||||||
|
<explicit-platform explicit-source-supported="true"/>
|
||||||
|
<source-roots>
|
||||||
|
<root id="src.dir"/>
|
||||||
|
</source-roots>
|
||||||
|
<test-roots>
|
||||||
|
<root id="test.src.dir"/>
|
||||||
|
</test-roots>
|
||||||
|
</data>
|
||||||
|
</configuration>
|
||||||
|
</project>
|
@ -0,0 +1,58 @@
|
|||||||
|
/*
|
||||||
|
* Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-default.txt to change this license
|
||||||
|
* Click nbfs://nbhost/SystemFileSystem/Templates/javafx/FXMain.java to edit this template
|
||||||
|
*/
|
||||||
|
package javafxapplication1;
|
||||||
|
|
||||||
|
import javafx.application.Application;
|
||||||
|
import javafx.event.ActionEvent;
|
||||||
|
import javafx.event.EventHandler;
|
||||||
|
import javafx.scene.Scene;
|
||||||
|
import javafx.scene.control.Button;
|
||||||
|
import javafx.scene.layout.StackPane;
|
||||||
|
import javafx.stage.Stage;
|
||||||
|
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
* @author caleb
|
||||||
|
*/
|
||||||
|
public class JavaFXApplication1 extends Application {
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void start(Stage primaryStage)
|
||||||
|
{
|
||||||
|
Button btn = new Button();
|
||||||
|
btn.setText("Say 'Hello World'");
|
||||||
|
Button btn2 = new Button();
|
||||||
|
btn2.setText("I'm a new button");
|
||||||
|
btn2.al
|
||||||
|
btn2.setLayoutY(250);
|
||||||
|
btn.setOnAction(new EventHandler<ActionEvent>() {
|
||||||
|
@Override
|
||||||
|
public void handle(ActionEvent event)
|
||||||
|
{
|
||||||
|
System.out.println("Hello World!");
|
||||||
|
}
|
||||||
|
|
||||||
|
});
|
||||||
|
|
||||||
|
StackPane root = new StackPane();
|
||||||
|
root.getChildren().add(btn);
|
||||||
|
root.getChildren().add(btn2);
|
||||||
|
|
||||||
|
Scene scene = new Scene(root, 500, 250);
|
||||||
|
|
||||||
|
primaryStage.setTitle("Hello World!");
|
||||||
|
primaryStage.setScene(scene);
|
||||||
|
primaryStage.show();
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @param args the command line arguments
|
||||||
|
*/
|
||||||
|
public static void main(String[] args)
|
||||||
|
{
|
||||||
|
launch(args);
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
@ -0,0 +1,15 @@
|
|||||||
|
/*
|
||||||
|
* Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-default.txt to change this license
|
||||||
|
* Click nbfs://nbhost/SystemFileSystem/Templates/Classes/Class.java to edit this template
|
||||||
|
*/
|
||||||
|
package javafxapplication1;
|
||||||
|
|
||||||
|
import javafx.application.Application;
|
||||||
|
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
* @author caleb
|
||||||
|
*/
|
||||||
|
public class Test1 extends Application{
|
||||||
|
|
||||||
|
}
|
@ -0,0 +1,3 @@
|
|||||||
|
{
|
||||||
|
"directory": "public_html/bower_components"
|
||||||
|
}
|
@ -0,0 +1,9 @@
|
|||||||
|
/*
|
||||||
|
* Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-default.txt to change this license
|
||||||
|
* Click nbfs://nbhost/SystemFileSystem/Templates/ClientSide/Gruntfile.js to edit this template
|
||||||
|
*/
|
||||||
|
module.exports = function (grunt) {
|
||||||
|
// Project configuration.
|
||||||
|
grunt.initConfig({
|
||||||
|
});
|
||||||
|
};
|
@ -0,0 +1,13 @@
|
|||||||
|
{
|
||||||
|
"name": "MP13_CalebFontenot",
|
||||||
|
"version": "1.0.0",
|
||||||
|
"main": "path/to/main.css",
|
||||||
|
"ignore": [
|
||||||
|
".jshintrc",
|
||||||
|
"**/*.txt"
|
||||||
|
],
|
||||||
|
"dependencies": {
|
||||||
|
},
|
||||||
|
"devDependencies": {
|
||||||
|
}
|
||||||
|
}
|
Binary file not shown.
@ -0,0 +1,10 @@
|
|||||||
|
/*
|
||||||
|
* Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-default.txt to change this license
|
||||||
|
* Click nbfs://nbhost/SystemFileSystem/Templates/ClientSide/gulpfile.js to edit this template
|
||||||
|
*/
|
||||||
|
|
||||||
|
var gulp = require('gulp');
|
||||||
|
|
||||||
|
gulp.task('default', function () {
|
||||||
|
// place code for your default task here
|
||||||
|
});
|
@ -0,0 +1,5 @@
|
|||||||
|
file.reference.MP13_CalebFontenot-public_html=public_html
|
||||||
|
file.reference.MP13_CalebFontenot-test=test
|
||||||
|
files.encoding=UTF-8
|
||||||
|
site.root.folder=${file.reference.MP13_CalebFontenot-public_html}
|
||||||
|
test.folder=${file.reference.MP13_CalebFontenot-test}
|
@ -0,0 +1,9 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<project xmlns="http://www.netbeans.org/ns/project/1">
|
||||||
|
<type>org.netbeans.modules.web.clientproject</type>
|
||||||
|
<configuration>
|
||||||
|
<data xmlns="http://www.netbeans.org/ns/clientside-project/1">
|
||||||
|
<name>MP13_CalebFontenot</name>
|
||||||
|
</data>
|
||||||
|
</configuration>
|
||||||
|
</project>
|
@ -0,0 +1,8 @@
|
|||||||
|
{
|
||||||
|
"name": "MP13_CalebFontenot",
|
||||||
|
"version": "1.0.0",
|
||||||
|
"keywords": ["util", "functional", "server", "client", "browser"],
|
||||||
|
"author": "caleb",
|
||||||
|
"contributors": [],
|
||||||
|
"dependencies": {}
|
||||||
|
}
|
@ -0,0 +1,46 @@
|
|||||||
|
<!DOCTYPE html>
|
||||||
|
<!--
|
||||||
|
Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-default.txt to change this license
|
||||||
|
Click nbfs://nbhost/SystemFileSystem/Templates/ClientSide/html.html to edit this template
|
||||||
|
-->
|
||||||
|
<html>
|
||||||
|
<head>
|
||||||
|
<title>Problem 3</title>
|
||||||
|
<meta charset="UTF-8">
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<label>Enter your name: <input id="nameInput"></label><br>
|
||||||
|
<label>Enter your nickname:<input id="nickInput"></label><br>
|
||||||
|
<label>Enter your email address: <input id="emailInput"></label><br>
|
||||||
|
<label>Favorite movie: <input id="movieInput"></label><br>
|
||||||
|
<label>Favorite book: <input id="bookInput"></label><br>
|
||||||
|
<label>Favorite type of music: <input id="musicInput"></label><br>
|
||||||
|
<label><input type="button" value="Submit" onclick="onClick();"></label><br>
|
||||||
|
</body>
|
||||||
|
<script>
|
||||||
|
function onClick() {
|
||||||
|
var userInput = {
|
||||||
|
"name": "",
|
||||||
|
"nickname": "",
|
||||||
|
"email": "",
|
||||||
|
"movie": "",
|
||||||
|
"book": "",
|
||||||
|
"music": ""
|
||||||
|
};
|
||||||
|
console.log(userInput[0]);
|
||||||
|
let fields = ["nameInput", "nickInput", "emailInput", "movieInput", "bookInput", "musicInput"]
|
||||||
|
let i = 0;
|
||||||
|
for (const x in userInput) {
|
||||||
|
userInput[x] = document.getElementById(fields[i++]).value;
|
||||||
|
}
|
||||||
|
console.log(userInput);
|
||||||
|
let doc = "<p> Your information: <br>"
|
||||||
|
for (const x in userInput) {
|
||||||
|
doc += x + ": " +userInput[x] + "<br>";
|
||||||
|
}
|
||||||
|
doc += "</p>"
|
||||||
|
document.write(doc);
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
</html>
|
@ -0,0 +1,21 @@
|
|||||||
|
<!DOCTYPE html>
|
||||||
|
<!--
|
||||||
|
Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-default.txt to change this license
|
||||||
|
Click nbfs://nbhost/SystemFileSystem/Templates/ClientSide/html.html to edit this template
|
||||||
|
-->
|
||||||
|
<html>
|
||||||
|
<head>
|
||||||
|
<title>TODO supply a title</title>
|
||||||
|
<meta charset="UTF-8">
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
|
||||||
|
</body>
|
||||||
|
<script>
|
||||||
|
function tableBuilder(field) {
|
||||||
|
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
|
||||||
|
</html>
|
@ -0,0 +1,15 @@
|
|||||||
|
<!DOCTYPE html>
|
||||||
|
<!--
|
||||||
|
Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-default.txt to change this license
|
||||||
|
Click nbfs://nbhost/SystemFileSystem/Templates/Other/html.html to edit this template
|
||||||
|
-->
|
||||||
|
<html>
|
||||||
|
<head>
|
||||||
|
<title>TODO supply a title</title>
|
||||||
|
<meta charset="UTF-8">
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<div>TODO write content</div>
|
||||||
|
</body>
|
||||||
|
</html>
|
Binary file not shown.
@ -0,0 +1,31 @@
|
|||||||
|
<html>
|
||||||
|
<head>
|
||||||
|
<title>Example 8.10</title>
|
||||||
|
<script type="text/javascript">
|
||||||
|
function getColors()
|
||||||
|
{
|
||||||
|
var ribbons = new Array("black", "white", "brown", "blue", "red");
|
||||||
|
var r = ribbons.length;
|
||||||
|
document.write("<table align = 'center'><tr><td>");
|
||||||
|
document.write("<br /> Old colors:</td></tr><tr><td>");
|
||||||
|
for (i = 0; i <= (r - 1); i++)
|
||||||
|
{
|
||||||
|
document.write(ribbons[i] + " ");
|
||||||
|
}
|
||||||
|
document.write("</td></tr><tr><td>Original length: " + r + "</td></tr><tr><td>");
|
||||||
|
ribbons.push("purple","green");
|
||||||
|
r = ribbons.length;
|
||||||
|
document.write("New colors:</td></tr><tr><td>");
|
||||||
|
for (i = 0; i <= (r - 1); i++)
|
||||||
|
{
|
||||||
|
document.write(ribbons[i] + " ");
|
||||||
|
}
|
||||||
|
document.write("</td></tr><tr><td>New length: " + r + "</td></tr>");
|
||||||
|
document.write("</table>");
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<button onclick="getColors()">See ribbon colors</button>
|
||||||
|
</body></html>
|
||||||
|
|
@ -0,0 +1,31 @@
|
|||||||
|
<html>
|
||||||
|
<head>
|
||||||
|
<title>Example 8.11</title>
|
||||||
|
<script type="text/javascript">
|
||||||
|
function getColors()
|
||||||
|
{
|
||||||
|
var ribbons = new Array("black", "white", "brown", "blue", "red");
|
||||||
|
var r = ribbons.length;
|
||||||
|
document.write("<table align = 'center'><tr><td>");
|
||||||
|
document.write("<br /> Old colors:</td></tr><tr><td>");
|
||||||
|
for (i = 0; i <= (r - 1); i++)
|
||||||
|
{
|
||||||
|
document.write(ribbons[i] + " ");
|
||||||
|
}
|
||||||
|
document.write("</td></tr><tr><td>Original length: " + r + "</td></tr><tr><td>");
|
||||||
|
ribbons.unshift("purple","green");
|
||||||
|
r = ribbons.length;
|
||||||
|
document.write("New colors:</td></tr><tr><td>");
|
||||||
|
for (i = 0; i <= (r - 1); i++)
|
||||||
|
{
|
||||||
|
document.write(ribbons[i] + " ");
|
||||||
|
}
|
||||||
|
document.write("</td></tr><tr><td>New length: " + r + "</td></tr>");
|
||||||
|
document.write("</table>");
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<button onclick="getColors()">See ribbon colors</button>
|
||||||
|
</body></html>
|
||||||
|
|
@ -0,0 +1,31 @@
|
|||||||
|
<html>
|
||||||
|
<head>
|
||||||
|
<title>Example 8.12</title>
|
||||||
|
<script type="text/javascript">
|
||||||
|
function getColors()
|
||||||
|
{
|
||||||
|
var ribbons = new Array("black", "white", "brown", "blue", "red");
|
||||||
|
var r = ribbons.length;
|
||||||
|
document.write("<table align = 'center'><tr><td>");
|
||||||
|
document.write("<br /> Old colors:</td></tr><tr><td>");
|
||||||
|
for (i = 0; i <= (r - 1); i++)
|
||||||
|
{
|
||||||
|
document.write(ribbons[i] + " ");
|
||||||
|
}
|
||||||
|
document.write("</td></tr><tr><td>Original length: " + r + "</td></tr><tr><td>");
|
||||||
|
ribbons.splice(2,0,"mauve","teal","ecru","buttercup");
|
||||||
|
r = ribbons.length;
|
||||||
|
document.write("New colors:</td></tr><tr><td>");
|
||||||
|
for (i = 0; i <= (r - 1); i++)
|
||||||
|
{
|
||||||
|
document.write(ribbons[i] + " ");
|
||||||
|
}
|
||||||
|
document.write("</td></tr><tr><td>New length: " + r + "</td></tr>");
|
||||||
|
document.write("</table>");
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<button onclick="getColors()">See ribbon colors</button>
|
||||||
|
</body></html>
|
||||||
|
|
@ -0,0 +1,31 @@
|
|||||||
|
<html>
|
||||||
|
<head>
|
||||||
|
<title>Example 8.13</title>
|
||||||
|
<script type="text/javascript">
|
||||||
|
function getColors()
|
||||||
|
{
|
||||||
|
var ribbons = new Array("black", "white", "mauve","teal","ecru","buttercup","brown", "blue", "red");
|
||||||
|
var r = ribbons.length;
|
||||||
|
document.write("<table align = 'center'><tr><td>");
|
||||||
|
document.write("<br /> Old colors:</td></tr><tr><td>");
|
||||||
|
for (i = 0; i <= (r - 1); i++)
|
||||||
|
{
|
||||||
|
document.write(ribbons[i] + " ");
|
||||||
|
}
|
||||||
|
document.write("</td></tr><tr><td>Original length: " + r + "</td></tr><tr><td>");
|
||||||
|
ribbons.splice(1,2);
|
||||||
|
r = ribbons.length;
|
||||||
|
document.write("New colors:</td></tr><tr><td>");
|
||||||
|
for (i = 0; i <= (r - 1); i++)
|
||||||
|
{
|
||||||
|
document.write(ribbons[i] + " ");
|
||||||
|
}
|
||||||
|
document.write("</td></tr><tr><td>New length: " + r + "</td></tr>");
|
||||||
|
document.write("</table>");
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<button onclick="getColors()">See ribbon colors</button>
|
||||||
|
</body></html>
|
||||||
|
|
@ -0,0 +1,107 @@
|
|||||||
|
<html>
|
||||||
|
<head>
|
||||||
|
<title>Example 8.14</title>
|
||||||
|
<script type="text/javascript">
|
||||||
|
function getRings()
|
||||||
|
{
|
||||||
|
var rings = new Array();
|
||||||
|
document.getElementById('ring_inventory').innerHTML = ("");
|
||||||
|
var numRings = parseInt(prompt("How many rings are in the inventory now?"));
|
||||||
|
for (i = 0; i <= (numRings - 1); i++)
|
||||||
|
{
|
||||||
|
rings[i] = prompt("Enter ring # " + (i + 1) +":");
|
||||||
|
}
|
||||||
|
displayRings(rings);
|
||||||
|
addRings(rings);
|
||||||
|
deleteRings(rings);
|
||||||
|
}
|
||||||
|
function displayRings(rings)
|
||||||
|
{
|
||||||
|
var r = rings.length;
|
||||||
|
for (i = 0; i <= (r - 1); i++)
|
||||||
|
{
|
||||||
|
document.getElementById('ring_inventory').innerHTML = ("<h3>" + rings + "</h3>");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
function addRings(rings)
|
||||||
|
{
|
||||||
|
var r = rings.length;
|
||||||
|
numAdd = parseInt(prompt("If you want to add to the inventory, enter the number of rings you want to add (or enter 0):"));
|
||||||
|
for (i = 0; i <= (numAdd - 1); i++)
|
||||||
|
{
|
||||||
|
if (numAdd == 0)
|
||||||
|
break;
|
||||||
|
var newRing = prompt("Enter a ring to add:");
|
||||||
|
rings.push(newRing);
|
||||||
|
}
|
||||||
|
displayRings(rings);
|
||||||
|
}
|
||||||
|
function deleteRings(rings)
|
||||||
|
{
|
||||||
|
var r = rings.length;
|
||||||
|
numSubt = parseInt(prompt("If you want to subtract from the inventory, enter the number of rings you want to subtract (or enter 0):"));
|
||||||
|
for (i = 0; i <= (numSubt - 1); i++)
|
||||||
|
{
|
||||||
|
if (numSubt == 0)
|
||||||
|
break;
|
||||||
|
var oldRing = prompt("Enter a ring to delete:");
|
||||||
|
var flag = 0;
|
||||||
|
for (j = 0; j <= (r - 1); j++)
|
||||||
|
{
|
||||||
|
if (rings[j] == oldRing)
|
||||||
|
{
|
||||||
|
rings.splice(j,1);
|
||||||
|
flag = 1;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (flag == 0)
|
||||||
|
{
|
||||||
|
alert(oldRing + " is not part of the inventory.");
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
displayRings(rings);
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
<style type="text/css">
|
||||||
|
<!--
|
||||||
|
body {
|
||||||
|
margin: 20pt;
|
||||||
|
padding: 5%;
|
||||||
|
width: 80%;
|
||||||
|
}
|
||||||
|
.div_width {
|
||||||
|
width: 33%;
|
||||||
|
float: left;
|
||||||
|
}
|
||||||
|
-->
|
||||||
|
</style>
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<div id="container">
|
||||||
|
<img src="images/jewel_box1.jpg" class="floatleft" />
|
||||||
|
<h1 align="center">Jackie's Jewelry Inventory</h1>
|
||||||
|
<div style ="clear:both;"></div>
|
||||||
|
<div = "content" width = "800">
|
||||||
|
<div class="div_width" id="rings">
|
||||||
|
<input type="button" value="Enter your inventory of rings" onclick="getRings()"; />
|
||||||
|
<h2>Ring Inventory</h2>
|
||||||
|
<div id = "ring_inventory"></div>
|
||||||
|
</div>
|
||||||
|
<div class="div_width" id="bracelets">
|
||||||
|
<input type="button" value="Enter your inventory of bracelets" onclick="getBracelets()"; />
|
||||||
|
<h2>Bracelet Inventory</h2>
|
||||||
|
<div id = "bracelet_inventory"></div>
|
||||||
|
</div>
|
||||||
|
<div id="pendants" >
|
||||||
|
<input type="button" value="Enter your inventory of pendants" onclick="getPendants()"; />
|
||||||
|
<h2 class="div_width">Pendant Inventory</h2>
|
||||||
|
<div id = "pendant_inventory"></div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</body>
|
||||||
|
</html>
|
||||||
|
|
||||||
|
|
@ -0,0 +1,12 @@
|
|||||||
|
function getRings()
|
||||||
|
{
|
||||||
|
var rings = new Array("gold band", "silver band", "turquoise inlay", "emerald stone", "ruby stone");
|
||||||
|
var r = rings.length;
|
||||||
|
r_title = "Ring Inventory";
|
||||||
|
document.getElementById('ring_head').innerHTML = r_title;
|
||||||
|
for (i = 0; i <= (r - 1); i++)
|
||||||
|
{
|
||||||
|
document.getElementById('ring_inventory').innerHTML = (rings[i] + "<br /> ");
|
||||||
|
}
|
||||||
|
document.write("</table>");
|
||||||
|
}
|
@ -0,0 +1,27 @@
|
|||||||
|
<html>
|
||||||
|
<head>
|
||||||
|
<title>Example 8.16</title>
|
||||||
|
<script type="text/javascript">
|
||||||
|
var myarray = new Array(6); //allocates 6 rows to the array
|
||||||
|
for (i = 0; i < 6; i++)
|
||||||
|
{
|
||||||
|
myarray[i] = new Array(5); //allocates 5 columns each row
|
||||||
|
}
|
||||||
|
|
||||||
|
document.write("Ex 8.16: 2-D array: <br />");
|
||||||
|
for (var i = 0; i < 6; i++)
|
||||||
|
{
|
||||||
|
for (var j = 0; j < 5; j++)
|
||||||
|
{
|
||||||
|
myarray[i][j] = prompt("Enter value for row " + i + ", column " + j +":");
|
||||||
|
document.write(myarray[i][j] + " ");
|
||||||
|
}
|
||||||
|
|
||||||
|
document.write("<br />");
|
||||||
|
}
|
||||||
|
|
||||||
|
</script>
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
</body>
|
||||||
|
</html>
|
@ -0,0 +1,58 @@
|
|||||||
|
<html>
|
||||||
|
<head>
|
||||||
|
<title>Example 8.17</title>
|
||||||
|
<script type="text/javascript">
|
||||||
|
function setup()
|
||||||
|
{
|
||||||
|
cells = new Array([document.getElementById("cell00"),document.getElementById("cell01"),
|
||||||
|
document.getElementById("cell02")],[document.getElementById("cell10"),
|
||||||
|
document.getElementById("cell11"), document.getElementById("cell12")],
|
||||||
|
[document.getElementById("cell20"),document.getElementById("cell21"),
|
||||||
|
document.getElementById("cell22")] );
|
||||||
|
placeValues();
|
||||||
|
}
|
||||||
|
// function to place values in cells
|
||||||
|
function placeValues()
|
||||||
|
{
|
||||||
|
for ( rows = 0; rows < 3; rows++ )
|
||||||
|
{
|
||||||
|
for ( var cols = 0; cols< 3; cols++ )
|
||||||
|
{
|
||||||
|
cells[rows][cols].innerHTML = prompt("Enter a value:");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
<style type="text/css">
|
||||||
|
<!--
|
||||||
|
table { border: solid #4f81bd; }
|
||||||
|
body { margin: 10ex; color: #4f81bd; font-weight: bold; }
|
||||||
|
td {
|
||||||
|
font-size: 18px; color: #4f81bd; font-weight: bold; margin: 10%;
|
||||||
|
padding: 5px; line-height: 120%; width: 75pt; height: 25pt;
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
-->
|
||||||
|
</style>
|
||||||
|
</head>
|
||||||
|
<body onload ="setup()">
|
||||||
|
<h1>Loading a 2-Dimensional Array</h1>
|
||||||
|
<table id = "myTable" border = "1">
|
||||||
|
<tr>
|
||||||
|
<td> <span id = "cell00" />cell 00 </td>
|
||||||
|
<td> <span id = "cell01" />cell 01 </td>
|
||||||
|
<td> <span id = "cell02" /> cell 02 </td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td> <span id = "cell10" />cell 10 </td>
|
||||||
|
<td> <span id = "cell11" />cell 11 </td>
|
||||||
|
<td> <span id = "cell12" />cell 12 </td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td> <span id = "cell20" />cell 20 </td>
|
||||||
|
<td> <span id = "cell21" />cell 21 </td>
|
||||||
|
<td> <span id = "cell22" />cell 22 </td>
|
||||||
|
</tr>
|
||||||
|
</table>
|
||||||
|
</body>
|
||||||
|
</html>
|
@ -0,0 +1,23 @@
|
|||||||
|
|
||||||
|
<html>
|
||||||
|
<head>
|
||||||
|
<title>Example 8.2</title>
|
||||||
|
<script type="text/javascript">
|
||||||
|
var numbers = new Array(3);
|
||||||
|
numbers[0] = 4;
|
||||||
|
numbers[1] = 5;
|
||||||
|
numbers[2] = 6;
|
||||||
|
var result = 0;
|
||||||
|
result = numbers[0] + numbers[1];
|
||||||
|
document.write("a): result = " + result + "<br />");
|
||||||
|
result = numbers[1] * numbers[2];
|
||||||
|
document.write("b): result = " + result + "<br />");
|
||||||
|
result = numbers[2] % numbers[0];
|
||||||
|
document.write("c): result = " + result + "<br />");
|
||||||
|
</script>
|
||||||
|
|
||||||
|
</head>
|
||||||
|
|
||||||
|
<body>
|
||||||
|
</body>
|
||||||
|
</html>
|
@ -0,0 +1,18 @@
|
|||||||
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
|
||||||
|
|
||||||
|
<html>
|
||||||
|
<head>
|
||||||
|
<title>Example 8.3</title>
|
||||||
|
<script type="text/javascript">
|
||||||
|
var food = new Array();
|
||||||
|
food[0] = "pizza";
|
||||||
|
food[1] = "hamburger";
|
||||||
|
document.write("Original length: " + food.length + "<br />");
|
||||||
|
food[2] = "chips";
|
||||||
|
food[3] = "cake";
|
||||||
|
document.write("New length: " + food.length);
|
||||||
|
</script>
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
</body>
|
||||||
|
</html>
|
@ -0,0 +1,19 @@
|
|||||||
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
|
||||||
|
|
||||||
|
<html>
|
||||||
|
<head>
|
||||||
|
<title>Example 8.6</title>
|
||||||
|
<script type="text/javascript">
|
||||||
|
var names = new Array();
|
||||||
|
var numStud = prompt("How many students are in the class: ");
|
||||||
|
numStud = parseInt(numStud);
|
||||||
|
var i = 0;
|
||||||
|
for (i = 0; i <= numStud - 1; i++)
|
||||||
|
{
|
||||||
|
names[i]= prompt("Enter the student's name: ");
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
</body>
|
||||||
|
</html>
|
@ -0,0 +1,18 @@
|
|||||||
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
|
||||||
|
<html>
|
||||||
|
<head>
|
||||||
|
<title>Example 8.7</title>
|
||||||
|
<script type="text/javascript">
|
||||||
|
var names = new Array();
|
||||||
|
var numStud = prompt("How many students are in the class? ");
|
||||||
|
numStud = parseInt(numStud);
|
||||||
|
var i = 0;
|
||||||
|
for (i = 0; i <= numStud - 1; i++)
|
||||||
|
{
|
||||||
|
names[i]= prompt("Enter the student's name: ");
|
||||||
|
document.write("Name of student " + (i + 1) + ": " + names[i] + "<br />");
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
</body></html>
|
@ -0,0 +1,33 @@
|
|||||||
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
|
||||||
|
<html>
|
||||||
|
<head>
|
||||||
|
<title>Example 8.8</title>
|
||||||
|
<script type="text/javascript">
|
||||||
|
var names = new Array();
|
||||||
|
var grades = new Array();
|
||||||
|
var high = 0;
|
||||||
|
var index = 0;
|
||||||
|
var k = 0;
|
||||||
|
while (names[k] != "*")
|
||||||
|
{
|
||||||
|
names[k]= prompt("Enter the student's name or enter an asterisk (*) when you are done: ");
|
||||||
|
if (names[k] == "*")
|
||||||
|
{
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
grades[k]= prompt("Enter the student's grade: ");
|
||||||
|
grades[k] = parseFloat(grades[k]);
|
||||||
|
document.write("Name of student " + (k + 1) + ": " + names[k] + " grade: " + grades[k] + "<br />");
|
||||||
|
if (grades[k] > high)
|
||||||
|
{
|
||||||
|
index = k;
|
||||||
|
high = grades[index];
|
||||||
|
}
|
||||||
|
k = k + 1;
|
||||||
|
}
|
||||||
|
document.write("The highest grade in the class is: " + grades[index] + "<br />");
|
||||||
|
document.write(names[index] + " is the high-achieving student! <br />");
|
||||||
|
</script>
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
</body></html>
|
@ -0,0 +1,37 @@
|
|||||||
|
<html>
|
||||||
|
<head>
|
||||||
|
<title>Example 8.9</title>
|
||||||
|
<script type="text/javascript">
|
||||||
|
var scores = new Array();
|
||||||
|
var sum = 0;
|
||||||
|
var count1 = 0;
|
||||||
|
var count2 = 0;
|
||||||
|
var count = 0;
|
||||||
|
var average = 0;
|
||||||
|
while (scores[count1] != 999)
|
||||||
|
{
|
||||||
|
scores[count1]= prompt("Enter the student's grade or enter 999 when you are done: ");
|
||||||
|
scores[count1] = parseFloat(scores[count1]);
|
||||||
|
if (scores[count1] == 999)
|
||||||
|
{
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
sum = sum + scores[count1];
|
||||||
|
count1 = count1 + 1;
|
||||||
|
}
|
||||||
|
average = sum / count1;
|
||||||
|
for (count = 0; count < count1; count++)
|
||||||
|
{
|
||||||
|
if (scores[count] > average)
|
||||||
|
{
|
||||||
|
count2 = count2 + 1;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
document.write("The average is: " + average.toFixed(2) + "<br />");
|
||||||
|
document.write("The number above the average is: " + count2 + "<br />");
|
||||||
|
document.write("The number below the average is: " + (count1 - count2) + "<br />");
|
||||||
|
</script>
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
</body></html>
|
||||||
|
|
@ -0,0 +1,122 @@
|
|||||||
|
body { background-color: #000040;
|
||||||
|
background-image: url(background.gif);
|
||||||
|
color: #88ffff;
|
||||||
|
font-family: Verdana, Arial, sans-serif;
|
||||||
|
}
|
||||||
|
#container { margin-left: auto;
|
||||||
|
margin-right: auto;
|
||||||
|
width:80%;
|
||||||
|
min-width:700px;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
#logo {
|
||||||
|
text-align:center;
|
||||||
|
margin: 0;
|
||||||
|
font-family: Geneva, Arial, Helvetica, sans-serif;
|
||||||
|
padding-top: 30px;
|
||||||
|
padding-bottom: 20px;
|
||||||
|
|
||||||
|
}
|
||||||
|
#nav {
|
||||||
|
float: left;
|
||||||
|
width: 200px;
|
||||||
|
padding-top: 10px;
|
||||||
|
text-align:left;
|
||||||
|
color: #88FFFF;
|
||||||
|
font-size: 12px;
|
||||||
|
}
|
||||||
|
#nav a {text-decoration:none;
|
||||||
|
margin: 15px;
|
||||||
|
display: block;
|
||||||
|
color: #88FFFF;
|
||||||
|
font-size: 12px;
|
||||||
|
}
|
||||||
|
#content {
|
||||||
|
margin-left: 150px;
|
||||||
|
padding: 30px;
|
||||||
|
overflow:auto;
|
||||||
|
border: medium groove #88FFFF;
|
||||||
|
line-height: 135%;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
.floatright {padding-left:20px;
|
||||||
|
float:right;
|
||||||
|
}
|
||||||
|
.floatleft {
|
||||||
|
float:left;
|
||||||
|
padding: 30px 0px 20px;
|
||||||
|
}
|
||||||
|
#footer { font-size: .60em;
|
||||||
|
font-style: italic;
|
||||||
|
text-align: center;
|
||||||
|
border-top: 2px double #000040;
|
||||||
|
padding-top: 20px;
|
||||||
|
padding-bottom: 20px;
|
||||||
|
}
|
||||||
|
|
||||||
|
h2 { text-transform: uppercase;
|
||||||
|
color: #88ffff;
|
||||||
|
font-size: 1.2em;
|
||||||
|
border-bottom: 1px none;
|
||||||
|
margin-right: 20px;
|
||||||
|
}
|
||||||
|
h3 {
|
||||||
|
color: #88ffff;
|
||||||
|
font-size: 1.2em;
|
||||||
|
border-bottom: 1px solid #000000;
|
||||||
|
margin-right: auto;
|
||||||
|
text-align: left;
|
||||||
|
padding-top: 10px;
|
||||||
|
padding-right: 20px;
|
||||||
|
padding-bottom: 10px;
|
||||||
|
padding-left: 20px;
|
||||||
|
line-height: 120%;
|
||||||
|
}
|
||||||
|
.details { padding-left:20%;
|
||||||
|
padding-right:20%;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
img {border:0; }
|
||||||
|
|
||||||
|
|
||||||
|
.content {
|
||||||
|
margin: 20px;
|
||||||
|
padding: 20px;
|
||||||
|
height: 3700px;
|
||||||
|
width: 500px;
|
||||||
|
}
|
||||||
|
a {text-decoration:none;
|
||||||
|
margin: 15px;
|
||||||
|
display: block;
|
||||||
|
color: #88FFFF;
|
||||||
|
font-size: 12px;
|
||||||
|
}
|
||||||
|
a:hover {
|
||||||
|
color: #000040;
|
||||||
|
background-color: #88ffff;
|
||||||
|
}
|
||||||
|
span {
|
||||||
|
font-size: 20px;
|
||||||
|
font-weight: bold;
|
||||||
|
font-family: "Courier New", Courier, mono;
|
||||||
|
color: #88ffff;
|
||||||
|
background-position: center center;
|
||||||
|
text-align: center;
|
||||||
|
vertical-align: middle;
|
||||||
|
}
|
||||||
|
table {
|
||||||
|
border-collapse: collapse
|
||||||
|
}
|
||||||
|
td {
|
||||||
|
border: 2px solid #88ffff;
|
||||||
|
width: 5em;
|
||||||
|
color: #88ffff;
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
.nobdr {
|
||||||
|
border: none;
|
||||||
|
cell-padding: 5px;
|
||||||
|
}
|
@ -0,0 +1,135 @@
|
|||||||
|
<html>
|
||||||
|
<head>
|
||||||
|
<title>Greg's Gambits | Greg's 15</title>
|
||||||
|
<link href="greg.css" rel="stylesheet" type="text/css" />
|
||||||
|
<script type = "text/javascript">
|
||||||
|
var cells;
|
||||||
|
var swapped;
|
||||||
|
function setup()
|
||||||
|
{
|
||||||
|
cells = new Array([document.getElementById("cell00"),document.getElementById("cell01"), document.getElementById("cell02"), document.getElementById("cell03")],
|
||||||
|
[document.getElementById("cell10"), document.getElementById("cell11"),document.getElementById("cell12"), document.getElementById("cell13")],
|
||||||
|
[document.getElementById("cell20"), document.getElementById("cell21"),document.getElementById("cell22"), document.getElementById("cell23")],
|
||||||
|
[document.getElementById("cell30"), document.getElementById("cell31"), document.getElementById("cell32"), document.getElementById("cell33")]);
|
||||||
|
placeNumbers();
|
||||||
|
}
|
||||||
|
function placeNumbers()
|
||||||
|
{
|
||||||
|
var numbers = new Array();
|
||||||
|
for (var i=0; i<=16; i++)
|
||||||
|
numbers[i] = i;
|
||||||
|
var randomLoc;
|
||||||
|
var temp;
|
||||||
|
for (i= 0; i < 16 ; i++)
|
||||||
|
{
|
||||||
|
randomLoc = Math.floor(Math.random()* 15 + 1);
|
||||||
|
temp = numbers[i];
|
||||||
|
numbers[i] = numbers[randomLoc];
|
||||||
|
numbers[randomLoc] = temp;
|
||||||
|
}
|
||||||
|
i = 0;
|
||||||
|
for (var rows = 0; rows < 4; rows++)
|
||||||
|
{
|
||||||
|
for (var cols = 0; cols< 4; cols++)
|
||||||
|
{
|
||||||
|
if (numbers[i] != 0)
|
||||||
|
cells[rows][cols].innerHTML = numbers[i];
|
||||||
|
else
|
||||||
|
cells[rows][cols].innerHTML = "";
|
||||||
|
++i;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
function doClick(row, col)
|
||||||
|
{
|
||||||
|
var top = row - 1;
|
||||||
|
var bottom = row + 1;
|
||||||
|
var left = col - 1;
|
||||||
|
var right = col + 1;
|
||||||
|
swapped = false;
|
||||||
|
if(top != -1 && cells[top][col].innerHTML == "")
|
||||||
|
swap(cells[row][col], cells[top][col]);
|
||||||
|
else
|
||||||
|
if(right != 4 && cells[row][right].innerHTML == "")
|
||||||
|
swap(cells[row][col], cells[row][right]);
|
||||||
|
else
|
||||||
|
if(bottom != 4 && cells[bottom][col].innerHTML == "")
|
||||||
|
swap(cells[row][col], cells[bottom][col]);
|
||||||
|
else
|
||||||
|
if (left != -1 && cells[row][left].innerHTML == "")
|
||||||
|
swap(cells[row][col], cells[row][left]);
|
||||||
|
else
|
||||||
|
alert("Illegal move.");
|
||||||
|
checkWinner();
|
||||||
|
}
|
||||||
|
function swap(firstCell, secondCell)
|
||||||
|
{
|
||||||
|
swapped = true;
|
||||||
|
secondCell.innerHTML = firstCell.innerHTML;
|
||||||
|
firstCell.innerHTML = "";
|
||||||
|
}
|
||||||
|
function checkWinner()
|
||||||
|
{
|
||||||
|
var win = true;
|
||||||
|
for (var i = 0; i < 4; i++)
|
||||||
|
{
|
||||||
|
for (var j = 0; j < 4; j++)
|
||||||
|
{
|
||||||
|
if (!(cells[i][j].innerHTML == i*4 + j + 1))
|
||||||
|
if (!(i == 3 && j == 3))
|
||||||
|
win = false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (win)
|
||||||
|
{
|
||||||
|
alert("Congratulations! You won!");
|
||||||
|
if (window.prompt("Play again?", "yes"))
|
||||||
|
placeNumbers();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
</head>
|
||||||
|
<body onload ="setup()">
|
||||||
|
<div id="container">
|
||||||
|
<img src="images/superhero.jpg" class="floatleft" />
|
||||||
|
<h1 id="logo"><em>Greg's 15</em></h1>
|
||||||
|
<p> </p>
|
||||||
|
<div id="nav">
|
||||||
|
<p><a href="index.html">Home</a>
|
||||||
|
<a href="greg.html">About Greg</a>
|
||||||
|
<a href="play_games.html">Play a Game</a>
|
||||||
|
<a href="sign.html">Sign In</a>
|
||||||
|
<a href="contact.html">Contact Us</a></p>
|
||||||
|
</div>
|
||||||
|
<div id="content">
|
||||||
|
<p><input type="button" value = "Start the game" onclick="setup();" /></p>
|
||||||
|
<p>You can move any number into an empty spot by moving up, down,right, or left. Diagonal moves are not allowed. The object is to get all the numbers into correct order, from 1 through 15 with the empty space at the end. </p>
|
||||||
|
<table width = "60%" align = "center">
|
||||||
|
<tr>
|
||||||
|
<td height = "60"><span onclick = "doClick(0,0)" id = "cell00" /> </td>
|
||||||
|
<td><span onclick = "doClick(0,1)" id = "cell01" /> </td>
|
||||||
|
<td><span onclick = "doClick(0,2)" id = "cell02" /> </td>
|
||||||
|
<td><span onclick = "doClick(0,3)" id = "cell03" /> </td>
|
||||||
|
</tr> <tr>
|
||||||
|
<td height = "60"><span onclick = "doClick(1,0)" id = "cell10" /> </td>
|
||||||
|
<td><span onclick = "doClick(1,1)" id = "cell11" /> </td>
|
||||||
|
<td><span onclick = "doClick(1,2)" id = "cell12" /> </td>
|
||||||
|
<td><span onclick = "doClick(1,3)" id = "cell13" /> </td>
|
||||||
|
</tr> <tr>
|
||||||
|
<td height = "60"><span onclick = "doClick(2,0)" id = "cell20" /> </td>
|
||||||
|
<td><span onclick = "doClick(2,1)" id = "cell21" /> </td>
|
||||||
|
<td><span onclick = "doClick(2,2)" id = "cell22" /> </td>
|
||||||
|
<td><span onclick = "doClick(2,3)" id = "cell23" /> </td>
|
||||||
|
</tr> <tr>
|
||||||
|
<td height = "60"><span onclick = "doClick(3,0)" id = "cell30" /> </td>
|
||||||
|
<td><span onclick = "doClick(3,1)" id = "cell31" /> </td>
|
||||||
|
<td><span onclick = "doClick(3,2)" id = "cell32" /> </td>
|
||||||
|
<td><span onclick = "doClick(3,3)" id = "cell33" /> </td>
|
||||||
|
</tr>
|
||||||
|
</table>
|
||||||
|
</div>
|
||||||
|
<div id="footer">Copyright © 2013 Greg's Gambits<br />
|
||||||
|
<a href="mailto:yourfirstname@yourlastname.com">
|
||||||
|
yourfirstname@yourlastname.com</a></div>
|
||||||
|
</div>
|
||||||
|
</body></html>
|
Binary file not shown.
After Width: | Height: | Size: 5.0 KiB |
@ -0,0 +1,44 @@
|
|||||||
|
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||||
|
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
|
||||||
|
<head>
|
||||||
|
<title>Greg's Gambits | Games Menu</title>
|
||||||
|
<link href="greg.css" rel="stylesheet" type="text/css" />
|
||||||
|
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||||
|
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<div id="container">
|
||||||
|
|
||||||
|
<img src="images/superhero.jpg" width="120" height="120" class="floatleft" />
|
||||||
|
<h1 id="logo"><em>Play A Game</em></h1>
|
||||||
|
<div style ="clear:both;"></div>
|
||||||
|
<div id="nav">
|
||||||
|
<p><a href="index.html">Home</a>
|
||||||
|
<a href="greg.html">About Greg</a>
|
||||||
|
<a href="play_games.html">Play a Game</a>
|
||||||
|
<a href="sign.html">Sign In</a>
|
||||||
|
<a href="contact.html">Contact Us</a></p>
|
||||||
|
</div>
|
||||||
|
<div id="content">
|
||||||
|
<p>Menu of Available Games </p>
|
||||||
|
<table width="90%" border="0" cellpadding="5">
|
||||||
|
<tr>
|
||||||
|
<td width="50%"><a href="greg_tales.html">Greg's Tales</a> </td>
|
||||||
|
<td width="50%"><a href ="gregs_fortune.html">Madame Vadoma Sees All</a></td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td width="50%"><a href="greg_encoder.html">The Secret Message Encoder</a> </td>
|
||||||
|
<td><a href = "greg_battle.html">Battle the Evil Troll</a></td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td><a href="greg_game_15.html">The Game of 15</a> </td>
|
||||||
|
<td> </td>
|
||||||
|
</tr>
|
||||||
|
</table>
|
||||||
|
<p> </p>
|
||||||
|
</div>
|
||||||
|
<div id="footer">Copyright © 2013 Greg's Gambits<br />
|
||||||
|
<a href="mailto:yourfirstname@yourlastname.com">yourfirstname@yourlastname.com</a></div>
|
||||||
|
</div>
|
||||||
|
</body>
|
||||||
|
</html>
|
Binary file not shown.
After Width: | Height: | Size: 13 KiB |
Loading…
Reference in New Issue