diff options
Diffstat (limited to 'thirdparty/URI.js/index.html')
-rw-r--r-- | thirdparty/URI.js/index.html | 173 |
1 files changed, 173 insertions, 0 deletions
diff --git a/thirdparty/URI.js/index.html b/thirdparty/URI.js/index.html new file mode 100644 index 000000000..880a24fbd --- /dev/null +++ b/thirdparty/URI.js/index.html @@ -0,0 +1,173 @@ +<!DOCTYPE html> +<html lang="en"> +<head> + <meta charset="utf-8" /> + <meta http-equiv="content-type" content="text/html; charset=utf-8" /> + <title>URI.js - URLs in Javascript</title> + <meta name="description" content="URI.js is a Javascript library for working with URLs." /> + + <script src="jquery-1.9.1.min.js" type="text/javascript"></script> + <script src="prettify/prettify.js" type="text/javascript"></script> + <script src="screen.js" type="text/javascript"></script> + <link href="screen.css" rel="stylesheet" type="text/css" /> + <link href="prettify/prettify.sunburst.css" rel="stylesheet" type="text/css" /> + <script src="src/URI.min.js" type="text/javascript"></script> + <script type="text/javascript"> + + var _gaq = _gaq || []; + _gaq.push(['_setAccount', 'UA-8922143-3']); + _gaq.push(['_trackPageview']); + + (function() { + var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true; + ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js'; + var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s); + })(); + + </script> +</head> +<body> + <a id="github-forkme" href="https://github.com/medialize/URI.js"><img src="http://s3.amazonaws.com/github/ribbons/forkme_right_darkblue_121621.png" alt="Fork me on GitHub" /></a> + <div id="github-watch"><a href="https://github.com/medialize/URI.js" class="gitwatch">URI.js Github Repository</a></div> + + <div id="container"> + <h1><a href="https://github.com/medialize/URI.js">URI.js</a></h1> + + <ul class="menu"> + <li class="active"><a href="/URI.js/">Intro</a></li> + <li><a href="about-uris.html">Understanding URIs</a></li> + <li><a href="docs.html">API-Documentation</a></li> + <li><a href="jquery-uri-plugin.html">jQuery Plugin</a></li> + <li><a href="uri-template.html">URI Template</a></li> + <li><a href="build.html">Build</a></li> + <li><a href="http://rodneyrehm.de/en/">Author</a></li> + </ul> + + <p>URI.js is a javascript library for working with URLs. It offers a "jQuery-style" API (<a href="http://en.wikipedia.org/wiki/Fluent_interface">Fluent Interface</a>, Method Chaining) to read and write all regular components and a number of convenience methods like + .<a href="docs.html#accessors-directory">directory</a>() and .<a href="docs.html#accessors-authority">authority</a>().</p> + <p>URI.js offers simple, yet powerful ways of working with query string, has a number of URI-normalization functions and converts relative/absolute paths.</p> + <p>While URI.js provides a <a href="jquery-uri-plugin.html">jQuery plugin</a>. URI.js itself does not rely on jQuery. You <em>don't need jQuery</em> to use URI.js</p> + + <h2>Examples</h2> + <p>How do you like manipulating URLs the "jQuery-style"?</p> + <pre class="prettyprint lang-js">// mutating URLs +URI("http://example.org/foo.html?hello=world") + .<a href="docs.html#accessors-username">username</a>("rodneyrehm") + // -> http://rodneyrehm@example.org/foo.html?hello=world + .<a href="docs.html#accessors-username">username</a>("") + // -> http://example.org/foo.html?hello=world + .<a href="docs.html#accessors-directory">directory</a>("bar") + // -> http://example.org/bar/foo.html?hello=world + .<a href="docs.html#accessors-suffix">suffix</a>("xml") + // -> http://example.org/bar/foo.xml?hello=world + .<a href="docs.html#accessors-hash">hash</a>("hackernews") + // -> http://example.org/bar/foo.xml?hello=world#hackernews + .<a href="docs.html#accessors-fragment">fragment</a>("") + // -> http://example.org/bar/foo.xml?hello=world + .<a href="docs.html#accessors-search">search</a>("") // alias of .query() + // -> http://example.org/bar/foo.xml + .<a href="docs.html#accessors-tld">tld</a>("com") + // -> http://example.com/bar/foo.xml + .<a href="docs.html#accessors-search">search</a>({ foo: "bar", hello: ["world", "mars"] }); + // -> http://example.com/bar/foo.xml?foo=bar&hello=world&hello=mars</pre> + + <p>How do you like working query strings?</p> + <pre class="prettyprint lang-js">URI("?hello=world") + .<a href="docs.html#search-add">addSearch</a>("hello", "mars") + // -> ?hello=world&hello=mars + .<a href="docs.html#search-add">addSearch</a>({ foo: ["bar", "baz"] }) + // -> ?hello=world&hello=mars&foo=bar&foo=baz + .<a href="docs.html#search-remove">removeSearch</a>("hello", "mars") + // -> ?hello=world&foo=bar&foo=baz + .<a href="docs.html#search-remove">removeSearch</a>("foo") + // -> ?hello=world + </pre> + + <p>How do you like relative paths?</p> + <pre class="prettyprint lang-js">URI("/relative/path") + .<a href="docs.html#relativeto">relativeTo</a>("/relative/sub/foo/sub/file") + // -> ../../../path + .<a href="docs.html#absolute">absoluteTo</a>("/relative/sub/foo/sub/file"); + // -> /relative/path </pre> + + <p>How do you like cleaning things up?</p> + <pre class="prettyprint lang-js">URI("?&foo=bar&&foo=bar&foo=baz&") + .<a href="docs.html#normalize-search">normalizeSearch</a>(); + // -> ?foo=bar&foo=baz + +URI("/hello/foo/woo/.././../world.html") + .<a href="docs.html#normalize-path">normalizePathname</a>(); + // -> /hello/world.html </pre> + + <p>How do you like detecting URIs within random text?</p> + <pre class="prettyprint lang-js">var source = "Hello www.example.com,\n" + + "http://google.com is a search engine, like http://www.bing.com\n" + + "http://exämple.org/foo.html?baz=la#bumm is an IDN URL,\n" + + "http://123.123.123.123/foo.html is IPv4 and " + + "http://fe80:0000:0000:0000:0204:61ff:fe9d:f156/foobar.html is IPv6.\n" + + "links can also be in parens (http://example.org) " + + "or quotes »http://example.org«."; + +var result = <a href="docs.html#static-withinString">URI.withinString</a>(source, function(url) { + return "<a>" + url + "</a>"; +}); + +/* result is: +Hello <strong><a>www.example.com</a></strong>, +<strong><a>http://google.com</a></strong> is a search engine, like <strong><a>http://www.bing.com</a></strong> +<strong><a>http://exämple.org/foo.html?baz=la#bumm</a></strong> is an IDN URL, +<strong><a>http://123.123.123.123/foo.html</a></strong> is IPv4 and <strong><a>http://fe80:0000:0000:0000:0204:61ff:fe9d:f156/foobar.html</a></strong> is IPv6. +links can also be in parens (<strong><a>http://example.org</a></strong>) or quotes »<strong><a>http://example.org</a></strong>«. +*/ +</pre> + + <p>How do you like comparing URLs?</p> + <pre class="prettyprint lang-js">var a = "http://example.org/foo/bar.html" + + "?foo=bar&hello=world&hello=mars#fragment", + b = "http://exAMPle.org:80/foo/../foo/bar.html" + + "?hello=mars&foo=bar&hello=world&#fragment"; + +a !== b; +URI(a).<a href="docs.html#equals">equals</a>(b) === true;</pre> + + <p>How do you like fiddling with the fragment?</p> + <pre class="prettyprint lang-js">// <strong>storing values in the fragment (hash):</strong> +var uri = URI("#hello-world"); +uri.fragment({foo: "bar", bar: ["hello", "world"]}); +uri.fragment() === "foo=bar&bar=hello&bar=world"; +// required src/URI.fragmentQuery.js to be loaded + +// <strong>storing URLs in the fragment (hash):</strong> +var uri = URI("http://example.org/#!/foo/bar/baz.html"), + furi = uri.fragment(true); +furi.pathname() === "/foo/bar/baz.html"; +furi.pathname("/hello.html"); +uri.toString() === "http://example.org/#!/hello.html" +// required src/URI.fragmentURI.js to be loaded</pre> + + <p>How do you like parsing URNs?</p> + <pre class="prettyprint lang-js">var uri = URI("urn:uuid:c5542ab6-3d96-403e-8e6b-b8bb52f48d9a?query=string"); +uri.protocol() == "urn"; +uri.path() == "uuid:c5542ab6-3d96-403e-8e6b-b8bb52f48d9a"; +uri.query() == "query=string";</pre> + + <p>How do you like URI Templating?</p> + <pre class="prettyprint lang-js">URI.expand("/foo/{dir}/{file}", { + dir: "bar", + file: "world.html" +}); +// -> /foo/bar/world.html</pre> + + <h2 id="authors">Authors</h2> + <ul> + <li><a href="http://rodneyrehm.de/en/">Rodney Rehm</a></li> + </ul> + + <h2 id="license">License</h2> + <p>URI.js is published under the <a href="http://www.opensource.org/licenses/mit-license">MIT license</a>.</p> + + </div> + + <script type="text/javascript" src="https://raw.github.com/addyosmani/github-watchers-button/master/github-watchers.min.js"></script> +</body> +</html>
\ No newline at end of file |