powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / AngularJS
2 сообщений из 2, страница 1 из 1
AngularJS
    #38631623
катастрофа
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
здравствуйте, познакомился с AngularJS
может поясните смысла этой странички

Код: html
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
76.
77.
78.
79.
80.
81.
82.
83.
84.
85.
86.
87.
88.
89.
90.
91.
92.
93.
94.
95.
96.
97.
98.
99.
100.
101.
102.
103.
104.
105.
106.
107.
108.
109.
110.
111.
112.
113.
114.
115.
116.
117.
118.
119.
120.
121.
122.
123.
124.
125.
126.
127.
128.
129.
130.
131.
132.
133.
134.
135.
136.
137.
138.
139.
140.
141.
142.
143.
144.
145.
146.
147.
148.
149.
150.
151.
152.
153.
154.
155.
156.
157.
158.
159.
160.
161.
162.
163.
164.
165.
166.
167.
168.
169.
170.
171.
172.
173.
174.
175.
176.
177.
178.
179.
180.
181.
182.
183.
184.
185.
186.
187.
188.
189.
190.
191.
192.
193.
194.
195.
196.
197.
198.
199.
200.
201.
202.
203.
204.
205.
206.
207.
208.
209.
210.
211.
212.
213.
214.
215.
216.
217.
218.
219.
220.
221.
222.
223.
224.
225.
226.
227.
228.
229.
230.
231.
232.
233.
234.
235.
236.
237.
238.
239.
240.
241.
242.
243.
244.
245.
246.
247.
248.
249.
250.
251.
252.
253.
254.
255.
256.
257.
258.
259.
260.
261.
262.
263.
264.
265.
266.
267.
268.
269.
270.
271.
272.
273.
274.
275.
276.
277.
278.
279.
280.
281.
282.
283.
284.
285.
286.
287.
288.
289.
290.
291.
292.
293.
294.
295.
296.
297.
298.
299.
300.
301.
302.
303.
304.
305.
306.
307.
308.
309.
310.
311.
<!doctype html>

<html ng-app>

  <head>

    <script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.3.0-beta.7/angular.min.js"></script>

    <!--варинат, когда css в файле отдельном

	<link rel="stylesheet" href="todo.css">-->

	

	 <STYLE>

{

	margin:0;

	padding:0;

}



body{

	font:15px/1.3 'Open Sans', sans-serif;

	color: #5e5b64;

	text-align:center;

}



a, a:visited {

	outline:none;

	color:#389dc1;

}



a:hover{

	text-decoration:none;

}



section, footer, header, aside, nav{

	display: block;

}



/*-------------------------

	Всплывающее меню редактора.

--------------------------*/



.tooltip{

	background-color:#5c9bb7;



	background-image:-webkit-linear-gradient(top, #5c9bb7, #5392ad);

	background-image:-moz-linear-gradient(top, #5c9bb7, #5392ad);

	background-image:linear-gradient(top, #5c9bb7, #5392ad);



	box-shadow: 0 1px 1px #ccc;

	border-radius:3px;

	width: 290px;

	padding: 10px;



	position: absolute;

	left:50%;

	margin-left:-150px;

	top: 80px;

}



.tooltip:after{

	/* The tip of the tooltip */

	content:'';

	position:absolute;

	border:6px solid #5190ac;

	border-color:#5190ac transparent transparent;

	width:0;

	height:0;

	bottom:-12px;

	left:50%;

	margin-left:-6px;

}



.tooltip input{

	border: none;

	width: 100%;

	line-height: 34px;

	border-radius: 3px;

	box-shadow: 0 2px 6px #bbb inset;

	text-align: center;

	font-size: 16px;

	font-family: inherit;

	color: #8d9395;

	font-weight: bold;

	outline: none;

}



p{

	font-size:22px;

	font-weight:bold;

	color:#6d8088;

	height: 30px;

	cursor:default;

}



p b{

	color:#ffffff;

	display:inline-block;

	padding:5px 10px;

	background-color:#c4d7e0;

	border-radius:2px;

	text-transform:uppercase;

	font-size:18px;

}



p:before{

	content:'&#9998;';

	display:inline-block;

	margin-right:5px;

	font-weight:normal;

	vertical-align: text-bottom;

}



#main{

	height:300px;

	position:relative;

	padding-top: 150px;

}

     </STYLE>

  </head>

<body>

<script type="text/javascript">

// Контроллер – стандартная функция. Она инициируется, когда 

//AngularJS при обработке кода находит атрибут ng-controller.



function InlineEditorController($scope){



	// $scope – специальный объект, который задает параметры отображения 

	// переменной. Здесь вы можете задать некоторые значения по умолчанию	

	$scope.showtooltip = false;

	$scope.value = 'Edit me.';



	// Некоторые вспомогательные функции, которые доступны после инициации	// Аngular.



	$scope.hideTooltip = function(){



		// Когда значение модели меняется, AngularJS автоматически вносит		// изменения в формат вывода. И всплывающее меню скрывается с экрана.





		$scope.showtooltip = false;

	}



	$scope.toggleTooltip = function(e){

		e.stopPropagation();

		$scope.showtooltip = !$scope.showtooltip;

	}

}

</script>



<!-- Когда элемент выбран, всплывающая подсказка скрывается-->

<div id="main" ng-app ng-controller="InlineEditorController" ng-click="hideTooltip()">

    <!-- Это всплывающая подсказка. Она показывается только, когда значение переменной "showtooltip" – «истина» -->

    <div class="tooltip" ng-click="$event.stopPropagation()" ng-show="showtooltip">

        <!-- ng-модель связывает содержание текстового поля с моделью "value".

         Любые изменения текстового поля будут автоматически задаваться, как значение этой модели, а также вызывать изменения других элементов страницы, связанных с ней.  -->

        <input type="text" ng-model="value" />

    </div>

    <!-- Выбор метода отображения подсказки из вариантов заданных в InlineEditorController (контроллере встроенного редактора), он зависит от значения переменной "showtooltip". -->

    <p ng-click="toggleTooltip($event)">{{value}}</p>

</div>

</body>

</html>


смысл сего не представляю
и ещё шедевр, но тут возможно я хреново скопипастил, спасибо
Код: html
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
76.
77.
78.
79.
80.
81.
82.
83.
84.
85.
86.
87.
88.
89.
90.
91.
92.
93.
94.
95.
96.
97.
98.
99.
100.
101.
102.
103.
104.
105.
106.
107.
108.
109.
110.
111.
112.
113.
114.
115.
116.
117.
118.
119.
120.
121.
122.
123.
124.
125.
126.
127.
128.
129.
130.
131.
132.
133.
134.
135.
136.
137.
138.
139.
140.
141.
142.
143.
144.
145.
146.
147.
148.
149.
150.
151.
152.
153.
154.
155.
156.
157.
158.
159.
160.
161.
162.
163.
164.
165.
166.
167.
168.
169.
170.
171.
172.
173.
174.
175.
176.
177.
178.
179.
180.
181.
182.
183.
184.
185.
186.
187.
188.
189.
190.
191.
192.
193.
194.
195.
196.
197.
198.
199.
200.
201.
202.
203.
204.
205.
206.
207.
208.
209.
210.
211.
212.
213.
214.
215.
216.
217.
218.
219.
220.
221.
222.
223.
224.
225.
226.
227.
228.
229.
230.
231.
232.
233.
234.
235.
236.
237.
238.
239.
240.
241.
242.
243.
244.
245.
246.
247.
248.
249.
250.
251.
252.
253.
254.
255.
256.
257.
258.
259.
260.
261.
262.
263.
264.
265.
266.
267.
268.
269.
270.
271.
272.
273.
274.
275.
276.
277.
278.
279.
280.
281.
282.
283.
284.
285.
286.
287.
288.
289.
290.
291.
292.
293.
294.
295.
296.
297.
298.
299.
300.
301.
302.
303.
304.
305.
306.
307.
308.
309.
310.
311.
312.
313.
314.
315.
316.
317.
318.
319.
320.
321.
322.
323.
324.
325.
326.
327.
328.
329.
330.
331.
332.
333.
334.
335.
336.
337.
338.
339.
340.
341.
342.
343.
344.
345.
346.
347.
348.
349.
350.
351.
352.
353.
354.
355.
356.
357.
358.
359.
360.
361.
362.
363.
364.
365.
366.
367.
368.
369.
370.
371.
372.
373.
374.
375.
376.
377.
378.
379.
380.
381.
382.
383.
384.
385.
386.
387.
388.
389.
390.
391.
392.
393.
394.
395.
396.
397.
398.
399.
400.
401.
402.
403.
404.
405.
406.
407.
408.
409.
410.
411.
412.
413.
414.
415.
416.
417.
418.
419.
420.
421.
422.
423.
424.
425.
426.
427.
428.
429.
430.
431.
432.
433.
434.
435.
436.
437.
438.
439.
440.
441.
442.
443.
444.
445.
446.
447.
448.
449.
450.
451.
452.
453.
454.
455.
456.
457.
458.
459.
460.
461.
462.
463.
464.
465.
466.
467.
468.
469.
470.
471.
472.
473.
474.
475.
476.
477.
478.
479.
480.
481.
482.
483.
484.
485.
<!doctype html>

<html ng-app>

  <head>

    <script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.3.0-beta.7/angular.min.js"></script>

    <script src="http://ajax.googleapis.com/ajax/libs/angularjs/1.0.7/angular-resource.min.js"></script>

	<!--варинат, когда css в файле отдельном

	<link rel="stylesheet" href="todo.css">-->

	

<STYLE>

{

	margin:0;

	padding:0;

}



body{

	font:15px/1.3 'Open Sans', sans-serif;

	color: #5e5b64;

	text-align:center;

}



a, a:visited {

	outline:none;

	color:#389dc1;

}



a:hover{

	text-decoration:none;

}



section, footer, header, aside, nav{

	display: block;

}



/*-------------------------

	Форма для задания аргумента поиска

--------------------------*/



.bar{

	background-color:#5c9bb7;



	background-image:-webkit-linear-gradient(top, #5c9bb7, #5392ad);

	background-image:-moz-linear-gradient(top, #5c9bb7, #5392ad);

	background-image:linear-gradient(top, #5c9bb7, #5392ad);



	box-shadow: 0 1px 1px #ccc;

	border-radius: 2px;

	width: 580px;

	padding: 10px;

	margin: 45px auto 25px;

	position:relative;

	text-align:right;

	line-height: 1;

}



.bar a{

	background:#4987a1 center center no-repeat;

	width:32px;

	height:32px;

	display:inline-block;

	text-decoration:none !important;

	margin-right:5px;

	border-radius:2px;

	cursor:pointer;

}



.bar a.active{

	background-color:#c14694;

}



.bar a.list-icon{

	background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyBpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMC1jMDYwIDYxLjEzNDc3NywgMjAxMC8wMi8xMi0xNzozMjowMCAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNSBXaW5kb3dzIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOkYzNkFCQ0ZBMTBCRTExRTM5NDk4RDFEM0E5RkQ1NEZCIiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOkYzNkFCQ0ZCMTBCRTExRTM5NDk4RDFEM0E5RkQ1NEZCIj4gPHhtcE1NOkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6RjM2QUJDRjgxMEJFMTFFMzk0OThEMUQzQTlGRDU0RkIiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6RjM2QUJDRjkxMEJFMTFFMzk0OThEMUQzQTlGRDU0RkIiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/eHBhY2tldCBlbmQ9InIiPz7h1bLqAAAAWUlEQVR42mL8////BwYGBn4GCACxBRlIAIxAA/4jaXoPEkMyjJ+A/g9MDJQBRhYg8RFqMwg8RJIUINYLFDmBUi+ADQAF1n8ofk9yIAy6WPg4GgtDMRYAAgwAdLYwLAoIwPgAAAAASUVORK5CYII=);

}



.bar a.grid-icon{

	background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyBpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMC1jMDYwIDYxLjEzNDc3NywgMjAxMC8wMi8xMi0xNzozMjowMCAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNSBXaW5kb3dzIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjBEQkMyQzE0MTBCRjExRTNBMDlGRTYyOTlBNDdCN0I4IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjBEQkMyQzE1MTBCRjExRTNBMDlGRTYyOTlBNDdCN0I4Ij4gPHhtcE1NOkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6MERCQzJDMTIxMEJGMTFFM0EwOUZFNjI5OUE0N0I3QjgiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MERCQzJDMTMxMEJGMTFFM0EwOUZFNjI5OUE0N0I3QjgiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/eHBhY2tldCBlbmQ9InIiPz4MjPshAAAAXklEQVR42mL4////h/8I8B6IGaCYKHFGEMnAwCDIAAHvgZgRyiZKnImBQsACxB+hNoDAQyQ5osQZIT4gH1DsBZABH6AB8x/JaQzEig++WPiII7Rxio/GwmCIBYAAAwAwVIzMp1R0aQAAAABJRU5ErkJggg==);

}



.bar input{

	background:#fff no-repeat 13px 13px;



	border: none;

	width: 100%;

	line-height: 19px;

	padding: 11px 0;



	border-radius: 2px;

	box-shadow: 0 2px 8px #c4c4c4 inset;

	text-align: left;

	font-size: 14px;

	font-family: inherit;

	color: #738289;

	font-weight: bold;

	outline: none;

	text-indent: 40px;

}



/*-------------------------

	Режим вывода «список»

--------------------------*/



ul.list{

	list-style: none;

	width: 500px;

	margin: 0 auto;

	text-align: left;

}



ul.list li{

	border-bottom: 1px solid #ddd;

	padding: 10px;

	overflow: hidden;

}



ul.list li img{

	width:120px;

	height:120px;

	float:left;

	border:none;

}



ul.list li p{

	margin-left: 135px;

	font-weight: bold;

	color:#6e7a7f;

}



/*-------------------------

	Режим вывода «плитка»

--------------------------*/



ul.grid{

	list-style: none;

	width: 570px;

	margin: 0 auto;

	text-align: left;

}



ul.grid li{

	padding: 2px;

	float:left;

}



ul.grid li img{

	width:280px;

	height:280px;

	display:block;

	border:none;

}

</STYLE>



  </head>

<body>

<script type="text/javascript">

// Задаем новый модуль. На этот раз в нем мы прописываем связь с модулем

 // ngResource, который предназначен для поддержки работы с Instagram API.



var app = angular.module("switchableGrid", ['ngResource']);



// Создаем и регистрируем новый сервис "instagram"



app.factory('instagram', function($resource){



	return {

		fetchPopular: function(callback){



			// В модуле ngResource уже прописан сервис $resource service.			// Он предназначен для оптимизации работы с AJAX. Здесь мы 			

// используем приложения client_id. Если необходимо, вы можете 			

// удалить или переместить его по своему усмотрению.



			var api = $resource('https://api.instagram.com/v1/media/popular?client_id=:client_id&callback=JSON_CALLBACK',{

				client_id: '642176ece1e7445e99244cec26f4de1f'

			},{

			// Этот код запускает функцию, которую мы назвали "fetch".				// Она отправляет JSONP-запрос к URL источника. При отклике на

 //JSONP-запрос к URL-адресам добавляется запись

// =JSON_CALLBACK

				

				fetch:{method:'JSONP'}

			});



			api.fetch(function(response){



			// Вызов функции, которая задает вывод результатов 					// обработки данных

				callback(response.data);



			});

		}

	}



});



// Контроллер. Обратите внимание, что в него включен новый сервис instagram, 

// который мы задали ранее. Он будет доступен внутри функции автоматически.



function SwitchableGridController($scope, instagram){



	// Режим вывода по умолчанию. Кликнув на соответствующую кнопку, мы

 	// можем выбрать тот вариант вывода, который нам нужен.

	

	$scope.layout = 'grid';



	$scope.pics = [];



	// Запускаем сервис instagram и выводим список популярных фото.



	instagram.fetchPopular(function(data){



		// Задаем массив данных (фото), которые будут обработаны Angular 

		// автоматически.

		$scope.pics = data;

	});

</script>

<div ng-app="switchableGrid" ng-controller="SwitchableGridController">



	<div class="bar">



		<!--Это две кнопки переключения между 

		режимами вывода элементов

		С их помощью задается корректный формат

		вывода элементов списка UL-->



		<a class="list-icon" ng-class="{active: layout == 'list'}" ng-click="layout = 'list'"></a>

		<a class="grid-icon" ng-class="{active: layout == 'grid'}" ng-click="layout = 'grid'"></a>

	</div>



	<!—У нас есть два варианта раскладки. Мы выбираем, какой из них нам нужен в зависимости от параметров переменной "layout" -->



	<ul ng-show="layout == 'grid'" class="grid">

		<!--A view with big photos and no text-->

		<li ng-repeat="p in pics">

			<a href="{{p.link}}" target="_blank"><img ng-src="{{p.images.low_resolution.url}}" /></a>

		</li>

	</ul>



	<ul ng-show="layout == 'list'" class="list">

		<!--A compact view smaller photos and titles -->

		<li ng-repeat="p in pics">

			<a href="{{p.link}}" target="_blank"><img ng-src="{{p.images.thumbnail.url}}" /></a>

			<p>{{p.caption.text}}</p>

		</li>

	</ul>

</div>

</body>

</html>

...
Рейтинг: 0 / 0
AngularJS
    #38631699
катастрофа
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
может лень копипастить, тогда в файлах
там правда три примера, в третьем тоже его фишку не пойму
...
Рейтинг: 0 / 0
2 сообщений из 2, страница 1 из 1
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / AngularJS
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]