c80_wslider 0.1.0 → 0.1.0.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/app/assets/javascripts/components/pbuttons.js +1 -1
- data/app/assets/javascripts/components/wloader/preloader.js +1 -1
- data/app/assets/javascripts/components/wloader/shower.js +29 -2
- data/app/assets/stylesheets/c80_wslider/wslider.scss +13 -0
- data/app/views/c80_wslider/_wslider_wrapper.html.erb +2 -0
- data/lib/c80_wslider/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 0827da7f99387682ddf69ea2bd98360ec71feaba
|
4
|
+
data.tar.gz: 4286ba6bd3dc4437d8527172608e42eed444d198
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 3a181caa4b5f3745b105ddb2e182783c0e1eff7d7999e52787beee43803f8be848d1d2ddc788e0eb17f10c2d55abe48c0d08e70ec18e0fcb477d3c355972874e
|
7
|
+
data.tar.gz: 83bb0c1cb4ae973ffee060b2f207638b7b6259e0fa41e9576f1422cf1aba73f0693381d9ff92dab09d02c0f6357b9cf0033846c9732f782a731ae80d7f2dd95c
|
@@ -23,7 +23,7 @@ var PButtons = function ($div_pbuttons, slider_height, fOnClick) {
|
|
23
23
|
_slider_height = slider_height;
|
24
24
|
|
25
25
|
// разместим _div_buttons по центру по вертикали
|
26
|
-
var top = (_slider_height - _div_buttons.
|
26
|
+
var top = (_slider_height - _div_buttons.outerHeight()) / 2;
|
27
27
|
$div_pbuttons.css('top', top + 'px');
|
28
28
|
|
29
29
|
// зафиксируем кнопки
|
@@ -26,7 +26,7 @@ var Preloader = function ($slider_wrapper, slider_height) {
|
|
26
26
|
_$preloader.css('height', _slider_height+'px');
|
27
27
|
|
28
28
|
// корректируем положение по вертикали блока spinner
|
29
|
-
var t = (_slider_height - _$spinner.
|
29
|
+
var t = (_slider_height - _$spinner.outerHeight())/2;
|
30
30
|
_$spinner.css('top', t);
|
31
31
|
|
32
32
|
};
|
@@ -1,3 +1,4 @@
|
|
1
|
+
// механику показа картинки фрейма содержит этот вспомогательный класс
|
1
2
|
|
2
3
|
// slider_height передаётся для того, чтобы можно было позиционировать текстовый блок по вертикали
|
3
4
|
var Shower = function ($wimages, slider_height) {
|
@@ -29,14 +30,40 @@ var Shower = function ($wimages, slider_height) {
|
|
29
30
|
var $h4 = $div_text.find('h4');
|
30
31
|
var $p = $div_text.find('p');
|
31
32
|
|
33
|
+
// рассчитаем кое-какие размеры
|
34
|
+
var div_text_height = $div_text.outerHeight();
|
35
|
+
var div_text_width = $div_text.outerWidth();
|
36
|
+
|
32
37
|
// подставляем туда текст из props
|
33
38
|
$h4.text(props['h4']);
|
34
39
|
$p.text(props['p']);
|
35
40
|
|
36
|
-
// позиционируем блок с текстом по вертикали по центру
|
37
|
-
var top = (_slider_height -
|
41
|
+
// позиционируем $div_text блок с текстом по вертикали по центру относительно высоты родителя _slider_height
|
42
|
+
var top = (_slider_height - div_text_height) / 2;
|
38
43
|
$div_text.css('top', top + 'px');
|
39
44
|
|
45
|
+
// ---- позиционируем прямоугольники
|
46
|
+
|
47
|
+
// выбираем логическую середину (допустим сдвиг вверх\вниз на десяток-другой процентов от div_text_height)
|
48
|
+
var div_text_middle = div_text_height/2 - div_text_height * .1;
|
49
|
+
|
50
|
+
// заголовок фрейма находится в верхней половине фрейма
|
51
|
+
var $h4_wrapper = $h4.parent();
|
52
|
+
$h4_wrapper.css('bottom', div_text_middle);
|
53
|
+
|
54
|
+
// заголовок фрейма чуть меньше ширины $div_text блока
|
55
|
+
var h4_wrapper_width = div_text_width * 0.6;
|
56
|
+
$h4_wrapper.css('width', h4_wrapper_width + 'px');
|
57
|
+
|
58
|
+
// заголовок фрейма центрируем относительно $div_text
|
59
|
+
var h4_wrapper_left = (div_text_width - h4_wrapper_width)/2;
|
60
|
+
$h4_wrapper.css('left', h4_wrapper_left + 'px');
|
61
|
+
|
62
|
+
// мелкую надпись размещаем в нижней половине прямоугольника
|
63
|
+
$p.css('margin-top', (div_text_height - div_text_middle) + 15 + 'px');
|
64
|
+
|
65
|
+
// ---- end позиционируем прямоугольники
|
66
|
+
|
40
67
|
// плавно проявляем фрейм
|
41
68
|
$div.addClass('eased').css('opacity','1');
|
42
69
|
|
@@ -37,6 +37,8 @@ div.wslider_wrapper {
|
|
37
37
|
position: relative;
|
38
38
|
|
39
39
|
div.h4_wrapper {
|
40
|
+
position: absolute;
|
41
|
+
/*background-color: rgba(0,0,0,0.5);*/
|
40
42
|
|
41
43
|
&::after {
|
42
44
|
background-color: #ffffff;
|
@@ -57,6 +59,15 @@ div.wslider_wrapper {
|
|
57
59
|
margin-top: 30px;
|
58
60
|
}
|
59
61
|
|
62
|
+
.text_border {
|
63
|
+
position: absolute;
|
64
|
+
top: 20px;
|
65
|
+
right: 20px;
|
66
|
+
bottom: 20px;
|
67
|
+
left: 20px;
|
68
|
+
border: 4px solid rgba(255,255,255,0.4);
|
69
|
+
}
|
70
|
+
|
60
71
|
}
|
61
72
|
|
62
73
|
}
|
@@ -85,6 +96,8 @@ div.wslider_wrapper {
|
|
85
96
|
font-size: 40px;
|
86
97
|
line-height: 100px;
|
87
98
|
|
99
|
+
text-shadow: 1px 1px 1px rgba(0,0,0,1);
|
100
|
+
|
88
101
|
-webkit-transition: color .4s ease-out;
|
89
102
|
-moz-transition: color .4s ease-out;
|
90
103
|
-ms-transition: color .4s ease-out;
|
@@ -12,6 +12,7 @@
|
|
12
12
|
<div class="frame_text">
|
13
13
|
<div class="h4_wrapper"><h4></h4></div>
|
14
14
|
<p></p>
|
15
|
+
<div class="text_border"></div>
|
15
16
|
</div>
|
16
17
|
</div>
|
17
18
|
</div>
|
@@ -21,6 +22,7 @@
|
|
21
22
|
<div class="frame_text">
|
22
23
|
<div class="h4_wrapper"><h4></h4></div>
|
23
24
|
<p></p>
|
25
|
+
<div class="text_border"></div>
|
24
26
|
</div>
|
25
27
|
</div>
|
26
28
|
</div>
|
data/lib/c80_wslider/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: c80_wslider
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.0
|
4
|
+
version: 0.1.0.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- C80609A
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2016-
|
11
|
+
date: 2016-09-05 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|