mirror of
https://gitlink.org.cn/Gitlink/forgeplus.git
synced 2026-05-03 03:40:49 +08:00
init project
This commit is contained in:
78
app/assets/javascripts/bootstrap.viewer.js
vendored
Executable file
78
app/assets/javascripts/bootstrap.viewer.js
vendored
Executable file
@@ -0,0 +1,78 @@
|
||||
/*
|
||||
* Copyright 2018-2018 the original author or authors.
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*
|
||||
* WebSite: http://bootstrap-viewer.leftso.com
|
||||
*/
|
||||
$.fn.bootstrapViewer = function (options) {
|
||||
$(this).on('click', function () {
|
||||
var opts = $.extend({}, $.fn.bootstrapViewer.defaults, options);
|
||||
var viewer = $('<div class="modal fade bs-example-modal-lg text-center" id="bootstrapViewer" tabindex="-1" role="dialog" aria-labelledby="myLargeModalLabel" >\n' +
|
||||
' <div class="modal-dialog modal-lg" style="display: inline-block; width: auto;">\n' +
|
||||
' <div class="modal-content">\n' +
|
||||
' <img' +
|
||||
'\t\t\t class="carousel-inner img-responsive img-rounded img-viewer" draggable="false"\n' +
|
||||
'\t\t\t onclick="/*$(\'#bootstrapViewer\').modal(\'hide\');setTimeout(function(){$(\'#bootstrapViewer\').remove();},200);*/"\n' +
|
||||
'\t\t\t onmouseover="this.style.cursor=\'move\';" \n' +
|
||||
'\t\t\t onmouseout="this.style.cursor=\'default\'" \n' +
|
||||
'\t\t\t />\n' +
|
||||
' </div>\n' +
|
||||
' </div>\n' +
|
||||
' </div>');
|
||||
$('body').append(viewer);
|
||||
if ($(this).attr(opts.src)) {
|
||||
$("#bootstrapViewer").find(".img-viewer").attr("src", $(this).attr(opts.src));
|
||||
$("#bootstrapViewer").modal();
|
||||
} else {
|
||||
throw "图片不存在"
|
||||
}
|
||||
$('#bootstrapViewer').on('hidden.bs.modal', function(){
|
||||
$('#bootstrapViewer').remove();
|
||||
});
|
||||
|
||||
var $moveDiv = $('#bootstrapViewer .modal-dialog');
|
||||
var isMove = false;
|
||||
var div_x = $moveDiv.offset().left;
|
||||
var div_y = $moveDiv.offset().top;
|
||||
|
||||
var mousedownFunc = function (e) {
|
||||
if (isMove) {
|
||||
var left = e.pageX - div_x;
|
||||
var top = e.pageY - div_y;
|
||||
if(left < 0){ left = 0}
|
||||
if(top < 0){ top = 0}
|
||||
$moveDiv.css({"left": left, "top":top});
|
||||
}
|
||||
}
|
||||
|
||||
$moveDiv.mousedown(function (e) {
|
||||
$moveDiv.css({ left: $moveDiv[0].offsetLeft, top: $moveDiv[0].offsetTop, marginTop: 0, position: 'absolute' });
|
||||
|
||||
isMove = true;
|
||||
div_x = e.pageX - $moveDiv.offset().left;
|
||||
div_y = e.pageY - $moveDiv.offset().top;
|
||||
$(document).mousemove(mousedownFunc);
|
||||
}).mouseup(function () {
|
||||
isMove = false;
|
||||
$(document).unbind('mousemove', mousedownFunc);
|
||||
});
|
||||
})
|
||||
|
||||
$(this).on('mouseover', function () {
|
||||
$(this).css('cursor', 'zoom-in');
|
||||
})
|
||||
}
|
||||
$.fn.bootstrapViewer.defaults = {
|
||||
src: 'src'
|
||||
}
|
||||
Reference in New Issue
Block a user