Skip to content

Commit 9096ba8

Browse files
Bumped version to 2.3.3
1 parent 2069129 commit 9096ba8

6 files changed

Lines changed: 29 additions & 11 deletions

File tree

README.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -19,10 +19,10 @@ An **85%** gain in size reduction. If you need a smaller bundle, we support [par
1919

2020
## Usage
2121

22-
Get cash from [CloudFlare](https://cdnjs.cloudflare.com/ajax/libs/cash/2.3.2/cash.min.js) or [jsDelivr](https://cdn.jsdelivr.net/npm/cash-dom@2.3.2/dist/cash.min.js) and use it like this:
22+
Get cash from [CloudFlare](https://cdnjs.cloudflare.com/ajax/libs/cash/2.3.3/cash.min.js) or [jsDelivr](https://cdn.jsdelivr.net/npm/cash-dom@2.3.3/dist/cash.min.js) and use it like this:
2323

2424
```html
25-
<script src="https://cdnjs.cloudflare.com/ajax/libs/cash/2.3.2/cash.min.js"></script>
25+
<script src="https://cdnjs.cloudflare.com/ajax/libs/cash/2.3.3/cash.min.js"></script>
2626
<script>
2727
$(function () {
2828
$('html').addClass ( 'dom-loaded' );

dist/cash.esm.js

Lines changed: 17 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -27,12 +27,17 @@ function find(selector, context) {
2727

2828

2929
function Cash(selector, context) {
30+
if (context === void 0) {
31+
context = doc;
32+
}
33+
3034
if (!selector) return;
3135
if (selector.__cash) return selector;
3236
var eles = selector;
3337

3438
if (isString(selector)) {
35-
eles = idRe.test(selector) ? doc.getElementById(selector.slice(1)) : htmlRe.test(selector) ? parseHTML(selector) : find(selector, context);
39+
if (context.__cash) context = context[0];
40+
eles = idRe.test(selector) ? context.getElementById(selector.slice(1)) : htmlRe.test(selector) ? parseHTML(selector) : find(selector, context);
3641
if (!eles) return;
3742
} else if (isFunction(selector)) {
3843
return this.ready(selector); //FIXME: `fn.ready` is not included in `core`, but it's actually a core functionality
@@ -924,15 +929,23 @@ fn.serialize = function () {
924929
});
925930
return query.substr(1);
926931
}; // @require core/cash.js
932+
// @require core/each.js
933+
// @require core/type_checking.js
927934
// @require collection/each.js
928935
// @require ./helpers/get_value.js
929936

930937

931938
fn.val = function (value) {
932939
if (value === undefined) return this[0] && getValue(this[0]);
933940
return this.each(function (i, ele) {
934-
ele.value = value;
935-
}); //TODO: Does it work for select[multiple] too?
941+
if (selectMultipleRe.test(ele.type) && isArray(value)) {
942+
each(ele.options, function (option) {
943+
option.selected = value.indexOf(option.value) >= 0;
944+
});
945+
} else {
946+
ele.value = value;
947+
}
948+
});
936949
}; // @optional ./serialize.js
937950
// @optional ./val.js
938951
// @require core/cash.js
@@ -1112,7 +1125,7 @@ fn.replaceWith = function (content) {
11121125
return this.each(function (i, ele) {
11131126
var parent = ele.parentNode;
11141127
if (!parent) return;
1115-
var $eles = cash(content);
1128+
var $eles = i ? cash(content).clone() : cash(content);
11161129

11171130
if (!$eles[0]) {
11181131
_this10.remove();

dist/cash.js

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,12 +28,17 @@ function find(selector, context) {
2828

2929

3030
function Cash(selector, context) {
31+
if (context === void 0) {
32+
context = doc;
33+
}
34+
3135
if (!selector) return;
3236
if (selector.__cash) return selector;
3337
var eles = selector;
3438

3539
if (isString(selector)) {
36-
eles = idRe.test(selector) ? doc.getElementById(selector.slice(1)) : htmlRe.test(selector) ? parseHTML(selector) : find(selector, context);
40+
if (context.__cash) context = context[0];
41+
eles = idRe.test(selector) ? context.getElementById(selector.slice(1)) : htmlRe.test(selector) ? parseHTML(selector) : find(selector, context);
3742
if (!eles) return;
3843
} else if (isFunction(selector)) {
3944
return this.ready(selector); //FIXME: `fn.ready` is not included in `core`, but it's actually a core functionality

dist/cash.min.js

Lines changed: 2 additions & 2 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package-lock.json

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
{
22
"name": "cash-dom",
33
"description": "An absurdly small jQuery alternative for modern browsers.",
4-
"version": "2.3.2",
4+
"version": "2.3.3",
55
"license": "MIT",
66
"main": "./dist/cash.js",
77
"module": "./dist/cash.esm.js",

0 commit comments

Comments
 (0)