<video class="plugin-video" src="https://www.w3schools.com/htmL/mov_bbb.mp4"></video>
<video class="plugin-video" src="https://www.w3schools.com/htmL/mov_bbb.mp4"></video>
<video class="plugin-video" src="https://www.w3schools.com/htmL/mov_bbb.mp4"></video>
(function($){
$(function(){
// инициализация плагина
$.fn.video = function(){
// применяем к каждому элементу
$(this).each(function(){
// элемент с видео
var video = this;
// обертка
var $wrap = $('<div/>');
// добавить после видео
$(this).after($wrap);
// видео в обертку
$wrap.append($(this));
// кнопка play
var $btn = $('<button/>', {
type: 'button',
value: 'play',
text: 'play'
});
// добавить кнопку
$wrap.append($btn);
// ловим клик по кнопке и элемент видео "замыкаем"
$btn.on('click', (function(video){
// из замыкания возвращаем функцию
return function(){
// юзверь хочет видео ))
video.play();
}
})(video))
});
};
// применяем плагин
$('.plugin-video').video();
});
})(jQuery);
var app = angular.module('myApp', []);
app.config(['$routeProvider', '$locationProvider', function($routeProvider, $locationProvider){
$routeProvider
.when('/', {
templateUrl:'template/home.html',
controller:'UsersCtrl'
})
.when('/edit/:userId', {
templateUrl:'template/edit.html',
controller:'EditCtrl'
})
.otherwise({
redirectTo: '/'
});
}]);
// Создаем фабрику для работы с ресурсом пользователей
app.factory('UserResource', function ($resource){
// Возвращаем ресурс, ссылка на документацию выше
return $resource(
'/test/users/:action', // роут для работы
{id: '@id'}, // поле идентификатор
{
update: { // переопределим метод update
method: 'PUT', // тип запроса
params: {action: 'edit'} // параметр action в роуте
},
}
);
});
// Контроллер списка пользователей
app.controller('UsersCtrl', function ($scope, UserResource) {
// запрос на список пользователей
$scope.users = UserResource.query();
});
// Контроллер редактирования пользователя
app.controller('EditCtrl', function ($scope, UserResource, $routeParams) {
// Загружаем текущего пользователя по ид из роута
$scope.user = UserResource.get({id: $routeParams.userId});
// Функция сохранения пользователя, form - объект формы
$scope.saveUser = function(form){
// Вызываем переопределенный метод update
UserResource.update($scope.user)
.$promise
// Ловим ошибки
.catch(function(err){
console.error(err);
});
};
});
<ul>
<li ng-repeat="user in users"><a href="/edit/{{user.id}}">{{user.name}}</a></li>
</ul>
<form class="form" name="form" ng-submit="saveUser(form)" novalidate>
<input type="text" ng-model="user.name">
<button class="btn btn-default" type="submit" ng-disabled="form.$invalid">Сохранить</button>
</form>
<!DOCTYPE html>
<html lang='en' ng-app='myApp'>
<head>
<meta charset="utf-8">
<title>Angular App</title>
<script src='https://ajax.googleapis.com/ajax/libs/angularjs/1.6.0/angular.min.js'></script>
<script src='https://ajax.googleapis.com/ajax/libs/angularjs/1.6.0/angular-route.min.js'></script>
<script src='app/app.js'></script>
</head>
<body>
<ng-view></ng-view>
</body>
</html>
<?php if (JURI::current() == JURI::base()) : ?><?php endif; ?>
;(function($){
$(function(){
$(document.head).append(
$('<script/>', {
'type' : 'text/javascript',
'src' : '//static.sprosikupi.ru/js/widget/sprosikupi.bootstrap.js'
}).on('load', function(){
$('div.spk-good-rating').each(function(){
if($(this).find('span.spk-rating-count').text() != '(0)'){
// $(this).append();
}
});
})
);
});
})(jQuery);
;(function($){
$(function(){
var load = function()
{
// погуглите "ajax cross domain request" если xml на другом сайте
$.get('http://steamcommunity.com/id/sertin/?xml=1&l=english')
.done(function(xml){
var xmlDoc = $.parseXML(xml),
$xml = $(xmlDoc),
$online = $xml.find("onlineState");
$('#image-id').prop('src', '/images/' + $online.text() + '.png');
window.setTimeout(load, 5000);
})
.fail(function(){
// continue?
// window.setTimeout(load, 5000);
});
}
window.setTimeout(load, 5000);
});
})(jQuery);