# najaxjs
**Repository Path**: anyhome/najaxjs
## Basic Information
- **Project Name**: najaxjs
- **Description**: No description available
- **Primary Language**: JavaScript
- **License**: MIT
- **Default Branch**: master
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 0
- **Forks**: 0
- **Created**: 2021-10-09
- **Last Updated**: 2021-10-09
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
[](LICENSE)
najaxjs - Ajax simple library
======
Features
------------
- najaxjs. Ajax simple library. You can use ajax easily and customize request & response behaviors.
- Supported _response-type_ is raw text / json / jsonp / html / script / csv / or others...
And it has many ajax options, async / sync / retry / timeout / cache / or others by Nx object.
- Cross-domain requests supported by $najax.scriptTag / $najax.jsonpTag.
- There are various helper methods, $najax.url, $najax.query, $najax.submit.
And $najax@helper, Singular, Pager, Reflector classes support 'ajax + ui'.
- $najax.history can easily operate url-history(push / replace / listen).
- Relay / Linker class. It can bundle responses.
Requirements
------------
- None. Any other library is unnecessary.
(Only $najax.sendex method requires anyjs and jQuery library.)
Browser Support
------------
- Modern web-browsers(Chrome, IE, Firefox, Safari, Opera) support.
- IE browser: Support IE9. Loose support in IE8. (You can use most of the functions.)
- Legacy browser partially support.
Basic usage(code example)
------------
```javascript
// Ajax by $najax.request
$najax.request(url).done();
//
// Set request and response behaviors by Nx
$najax.request(url).type('text').timeout(5).retry(3).done();
$najax.csv(url).done();
$najax.sync(url).param('stone', 'age').done();
//
// It's possible to set success / fail / complete function
$najax.request(url).success(sccs).complete(cmp).done();
$najax.request(url).fail(fail).complete(cmp).done();
$najax.request(url).done(sccs);
//
//
// Others
// See tutorials.
```
Distributions
------------
For detail, see reference. In dist directory,
| Distribution | Introduction |
|:---|:---|
| najax.js / najax.min.js | Default version. |
| najax-tiny.js / najax-tiny.min.js | Tiny version. Not include the below.
$najax.history
$najax.send / $najax.sendex
$najax.scriptTag / $najax.jsonpTag
$najax@class(Singular, Pager, Reflector) |
| najax-micro.js / najax-micro.min.js | Micro version. Not include helper methods. |
| rlk.js / rlk.min.js | Relay / Linker standalone version. |
Ajax response type
------------
See [Nx.type] for detail.
| Type | Description | Value type |
|:---|:---|:---|
| json(*) | Json. | assoc |
| raw | Raw data. | string |
| text | Text. text is same as raw. | string |
| html | HTML. | Element |
| script | Execute script. | null |
| func | Function. | function |
| jsonp | Jsonp. | null |
| csv | Csv(Tsv). | array |
| xml | Xml. | XMLDocument |
| blob | Blob. | Blob |
| other | XMLHttpRequest.responseType. | Varies. |
Nx class specification
------------
Nx class. This class is created automatically by $najax various method.
Specification
- Specify ajax request and response behaviors by Nx object.
- Specify by Nx object's various method or Nx opt method.
- Begin ajax connection by Nx done.
- Nx done returns Relay object.
- Relay provide operating response-data, and bundling multiple Relay.
- Nx implement ajax by using XMLHttpRequest.
Relation library(any-js series)
------------
| Library | Introduction | Requirements |
|:---|:---|:---|
| anyjs | Basic methods and UI helper library. | jQuery library |
| najaxjs | Simple ajax library. | None |
| nviewjs | View template engine. | jQuery library / anyjs |
License
------------
Released under the MIT license. See [LICENSE](./LICENSE).
ChangeLog
------------
See [CHANGELOG](./CHANGELOG.md).