Skip to content

Commit 7d3c7a5

Browse files
committed
actionbar config & imageview
1 parent 196321c commit 7d3c7a5

File tree

11 files changed

+108
-31
lines changed

11 files changed

+108
-31
lines changed

dist/js/main.js

+29-6
Original file line numberDiff line numberDiff line change
@@ -2312,7 +2312,7 @@ define("../cardkit/parser/util", [
23122312
var sid = $(node).data('source');
23132313
if (sid) {
23142314
var source = raw.find('.' + sid);
2315-
return source[0] && source;
2315+
return source[0] && source || false;
23162316
}
23172317
},
23182318

@@ -2566,6 +2566,9 @@ define("../cardkit/parser/actionbar", [
25662566
return util.getItemDataOuter(elm, null, 'item');
25672567
}) || $(),
25682568
custom_items = util.getCustom('.ckd-item', cfg, raw, util.getItemDataOuter, 'item');
2569+
if (source === false && !custom_items.length) {
2570+
return false;
2571+
}
25692572
var data = {
25702573
config: config,
25712574
items: custom_items.concat(items || $())
@@ -3260,24 +3263,32 @@ define("../cardkit/render", [
32603263
var cfg = this._frameConfig,
32613264
customized = this._frameCustomized,
32623265
global_cfg,
3266+
local_cfg,
32633267
cfg_node,
32643268
changed = {};
32653269
for (var part in frame_parts) {
32663270
if (!cfg[part] || customized[part]) {
32673271
global_cfg = header.find('.ckcfg-' + part);
32683272
if (global_cfg[0]) {
32693273
cfg[part] = frame_parts[part](global_cfg, raw);
3270-
changed[part] = true;
3274+
if (cfg[part]) {
3275+
changed[part] = true;
3276+
}
32713277
}
32723278
}
32733279
cfg_node = card.find('.ckcfg-' + part);
32743280
customized[part] = !!cfg_node[0];
32753281
if (customized[part]) {
3276-
cfg[part] = frame_parts[part](cfg_node, raw);
3277-
changed[part] = true;
3282+
local_cfg = frame_parts[part](cfg_node, raw);
3283+
if (local_cfg) {
3284+
cfg[part] = local_cfg;
3285+
changed[part] = true;
3286+
} else {
3287+
customized[part] = false;
3288+
}
32783289
}
32793290
}
3280-
if (changed['page-actions'] || changed['card-actions']) {
3291+
if (changed['card-actions']) {
32813292
var actions = cfg['actionbar'] = cfg['card-actions'],
32823293
action_items = actions.items;
32833294
action_items.push.apply(action_items, cfg['page-actions'].items);
@@ -7340,6 +7351,13 @@ define("../cardkit/app", [
73407351
//clear_active_item_mask(ck.viewport);
73417352
//},
73427353

7354+
'.ck-link-img': function(){
7355+
var src = $(this).attr('src');
7356+
if (src) {
7357+
ck.openImage(src);
7358+
}
7359+
},
7360+
73437361
'.ck-post-link': handle_control,
73447362

73457363
'.ck-post-button, .ck-post-button span': tap_ck_post,
@@ -8332,6 +8350,10 @@ define("../cardkit/app", [
83328350
return bus.promise('navdrawer:close');
83338351
},
83348352

8353+
openImage: function(src){
8354+
forward_handler(LOADING_CARDID, src);
8355+
},
8356+
83358357
openModal: function(opt){
83368358
this.hideAddressbar();
83378359
this.disableControl();
@@ -8486,7 +8508,8 @@ define("../cardkit/app", [
84868508
open_url(me.href);
84878509
}
84888510
return;
8489-
} else if ($(me).hasClass('ck-link')) {
8511+
} else if ($(me).hasClass('ck-link')
8512+
|| $(me).hasClass('ck-link-img')) {
84908513
} else if (/(^|\s)ck-\w+/.test(me.className)) {
84918514
return;
84928515
} else if (me.target) {

dist/js/main.min.js

+4-4
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

examples/box.html

+1-1
Original file line numberDiff line numberDiff line change
@@ -164,7 +164,7 @@ <h2 class="ckd-hd">This is header</h2>
164164
<div class="ck-box-unit" data-cfg-paper="true" data-cfg-disable-reader="true">
165165
<h2 class="ckd-hd">This is header. This is header. This is header.</h2>
166166
<p class="classname-A">This is content text A.This is content text A.This is content text A.This is content text A.This is content text
167-
<img src="http://ww4.sinaimg.cn/bmiddle/681f611fjw1e4dw2bf1mqj20gh097gn5.jpg">
167+
<img class="ck-link-img" src="http://ww4.sinaimg.cn/bmiddle/681f611fjw1e4dw2bf1mqj20gh097gn5.jpg">
168168
A.This is content text A.</p>
169169
<p>This is content text B.This is content text B.This is content text B.This is content text B.This is content text B.</p>
170170
<div class="ckd-ft">This is footer</div>

examples/css/common.css

+4-4
Original file line numberDiff line numberDiff line change
@@ -85,10 +85,10 @@
8585
display:inline-block;
8686
width:10px;
8787
height:10px;
88-
-webkit-border-radius: 5px;
89-
-moz-border-radius: 5px;
90-
-ms-border-radius: 5px;
91-
border-radius: 5px;
88+
-webkit-border-radius: 10px;
89+
-moz-border-radius: 10px;
90+
-ms-border-radius: 10px;
91+
border-radius: 10px;
9292
border:1px solid #fff;
9393
background-image:-webkit-linear-gradient(bottom, #c60006, #e20007);
9494
background-image:-moz-linear-gradient(bottom, #c60006, #e20007);

examples/dist/js/main.js

+29-6
Original file line numberDiff line numberDiff line change
@@ -2312,7 +2312,7 @@ define("../cardkit/parser/util", [
23122312
var sid = $(node).data('source');
23132313
if (sid) {
23142314
var source = raw.find('.' + sid);
2315-
return source[0] && source;
2315+
return source[0] && source || false;
23162316
}
23172317
},
23182318

@@ -2566,6 +2566,9 @@ define("../cardkit/parser/actionbar", [
25662566
return util.getItemDataOuter(elm, null, 'item');
25672567
}) || $(),
25682568
custom_items = util.getCustom('.ckd-item', cfg, raw, util.getItemDataOuter, 'item');
2569+
if (source === false && !custom_items.length) {
2570+
return false;
2571+
}
25692572
var data = {
25702573
config: config,
25712574
items: custom_items.concat(items || $())
@@ -3260,24 +3263,32 @@ define("../cardkit/render", [
32603263
var cfg = this._frameConfig,
32613264
customized = this._frameCustomized,
32623265
global_cfg,
3266+
local_cfg,
32633267
cfg_node,
32643268
changed = {};
32653269
for (var part in frame_parts) {
32663270
if (!cfg[part] || customized[part]) {
32673271
global_cfg = header.find('.ckcfg-' + part);
32683272
if (global_cfg[0]) {
32693273
cfg[part] = frame_parts[part](global_cfg, raw);
3270-
changed[part] = true;
3274+
if (cfg[part]) {
3275+
changed[part] = true;
3276+
}
32713277
}
32723278
}
32733279
cfg_node = card.find('.ckcfg-' + part);
32743280
customized[part] = !!cfg_node[0];
32753281
if (customized[part]) {
3276-
cfg[part] = frame_parts[part](cfg_node, raw);
3277-
changed[part] = true;
3282+
local_cfg = frame_parts[part](cfg_node, raw);
3283+
if (local_cfg) {
3284+
cfg[part] = local_cfg;
3285+
changed[part] = true;
3286+
} else {
3287+
customized[part] = false;
3288+
}
32783289
}
32793290
}
3280-
if (changed['page-actions'] || changed['card-actions']) {
3291+
if (changed['card-actions']) {
32813292
var actions = cfg['actionbar'] = cfg['card-actions'],
32823293
action_items = actions.items;
32833294
action_items.push.apply(action_items, cfg['page-actions'].items);
@@ -7340,6 +7351,13 @@ define("../cardkit/app", [
73407351
//clear_active_item_mask(ck.viewport);
73417352
//},
73427353

7354+
'.ck-link-img': function(){
7355+
var src = $(this).attr('src');
7356+
if (src) {
7357+
ck.openImage(src);
7358+
}
7359+
},
7360+
73437361
'.ck-post-link': handle_control,
73447362

73457363
'.ck-post-button, .ck-post-button span': tap_ck_post,
@@ -8332,6 +8350,10 @@ define("../cardkit/app", [
83328350
return bus.promise('navdrawer:close');
83338351
},
83348352

8353+
openImage: function(src){
8354+
forward_handler(LOADING_CARDID, src);
8355+
},
8356+
83358357
openModal: function(opt){
83368358
this.hideAddressbar();
83378359
this.disableControl();
@@ -8486,7 +8508,8 @@ define("../cardkit/app", [
84868508
open_url(me.href);
84878509
}
84888510
return;
8489-
} else if ($(me).hasClass('ck-link')) {
8511+
} else if ($(me).hasClass('ck-link')
8512+
|| $(me).hasClass('ck-link-img')) {
84908513
} else if (/(^|\s)ck-\w+/.test(me.className)) {
84918514
return;
84928515
} else if (me.target) {

examples/dist/js/main.min.js

+4-4
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

examples/overlay.html

+8
Original file line numberDiff line numberDiff line change
@@ -380,9 +380,17 @@ <h2>CardKit / Component</h2>
380380
</div>
381381

382382
<div class="ck-card" id="optionsCard">
383+
384+
<div class="ckcfg-card-actions" data-source="ckdActionbar">
385+
</div>
386+
383387
</div>
384388

385389
<div class="ck-card" id="apiCard">
390+
391+
<div class="ckcfg-card-actions" data-source="ckdNothing">
392+
</div>
393+
386394
</div>
387395

388396
<div class="ck-card ck-loading" id="ckLoading">

js/cardkit/app.js

+13-1
Original file line numberDiff line numberDiff line change
@@ -77,6 +77,13 @@ define([
7777
//clear_active_item_mask(ck.viewport);
7878
//},
7979

80+
'.ck-link-img': function(){
81+
var src = $(this).attr('src');
82+
if (src) {
83+
ck.openImage(src);
84+
}
85+
},
86+
8087
'.ck-post-link': handle_control,
8188

8289
'.ck-post-button, .ck-post-button span': tap_ck_post,
@@ -1069,6 +1076,10 @@ define([
10691076
return bus.promise('navdrawer:close');
10701077
},
10711078

1079+
openImage: function(src){
1080+
forward_handler(LOADING_CARDID, src);
1081+
},
1082+
10721083
openModal: function(opt){
10731084
this.hideAddressbar();
10741085
this.disableControl();
@@ -1223,7 +1234,8 @@ define([
12231234
open_url(me.href);
12241235
}
12251236
return;
1226-
} else if ($(me).hasClass('ck-link')) {
1237+
} else if ($(me).hasClass('ck-link')
1238+
|| $(me).hasClass('ck-link-img')) {
12271239
} else if (/(^|\s)ck-\w+/.test(me.className)) {
12281240
return;
12291241
} else if (me.target) {

js/cardkit/parser/actionbar.js

+3
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,9 @@ define([
1515
return util.getItemDataOuter(elm, null, 'item');
1616
}) || $(),
1717
custom_items = util.getCustom('.ckd-item', cfg, raw, util.getItemDataOuter, 'item');
18+
if (source === false && !custom_items.length) {
19+
return false;
20+
}
1821
var data = {
1922
config: config,
2023
items: custom_items.concat(items || $())

js/cardkit/parser/util.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ define([
1414
var sid = $(node).data('source');
1515
if (sid) {
1616
var source = raw.find('.' + sid);
17-
return source[0] && source;
17+
return source[0] && source || false;
1818
}
1919
},
2020

js/cardkit/render.js

+12-4
Original file line numberDiff line numberDiff line change
@@ -197,24 +197,32 @@ define([
197197
var cfg = this._frameConfig,
198198
customized = this._frameCustomized,
199199
global_cfg,
200+
local_cfg,
200201
cfg_node,
201202
changed = {};
202203
for (var part in frame_parts) {
203204
if (!cfg[part] || customized[part]) {
204205
global_cfg = header.find('.ckcfg-' + part);
205206
if (global_cfg[0]) {
206207
cfg[part] = frame_parts[part](global_cfg, raw);
207-
changed[part] = true;
208+
if (cfg[part]) {
209+
changed[part] = true;
210+
}
208211
}
209212
}
210213
cfg_node = card.find('.ckcfg-' + part);
211214
customized[part] = !!cfg_node[0];
212215
if (customized[part]) {
213-
cfg[part] = frame_parts[part](cfg_node, raw);
214-
changed[part] = true;
216+
local_cfg = frame_parts[part](cfg_node, raw);
217+
if (local_cfg) {
218+
cfg[part] = local_cfg;
219+
changed[part] = true;
220+
} else {
221+
customized[part] = false;
222+
}
215223
}
216224
}
217-
if (changed['page-actions'] || changed['card-actions']) {
225+
if (changed['card-actions']) {
218226
var actions = cfg['actionbar'] = cfg['card-actions'],
219227
action_items = actions.items;
220228
action_items.push.apply(action_items, cfg['page-actions'].items);

0 commit comments

Comments
 (0)