docs.js 3.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122
  1. /* Documentation sample */
  2. function judgeIsMobile() {
  3. return (/phone|pad|pod|iPhone|iPod|ios|iPad|Android|Mobile|BlackBerry|IEMobile|MQQBrowser|JUC|Fennec|wOSBrowser|BrowserNG|WebOS|Symbian|Windows Phone|webOS|android/i.test(navigator.userAgent))
  4. }
  5. function loadPage(page) {
  6. var img = $('<img />');
  7. img.load(function() {
  8. var container = $('.sample-docs .p'+page);
  9. img.css({width: container.width(), height: container.width()/imgBili});
  10. img.appendTo($('.sample-docs .p'+page));
  11. container.find('.loader').remove();
  12. });
  13. //处理移动端
  14. console.log('page',page)
  15. if(this.judgeIsMobile()) {
  16. img.attr('src', 'mobile-pages/' + `1 (${page-1})` + '.jpg');
  17. return;
  18. }
  19. img.attr('src', 'pages/' + `1 (${page-2})` + '.jpg');
  20. }
  21. function addPage(page, book) {
  22. var id, pages = book.turn('pages');
  23. var element = $('<div />', {});
  24. if (book.turn('addPage', element, page)) {
  25. if (page<191) {
  26. element.html('<div class="gradient"></div><div class="loader"></div>');
  27. loadPage(page);
  28. }
  29. }
  30. }
  31. // 控制书上方按钮---暂时无用
  32. function updateTabs() {
  33. var tabs = {7: 'Clases', 12:'Constructor', 14:'Properties', 16:'Methods', 23:'Events'},
  34. left = [],
  35. right = [],
  36. book = $('.sample-docs'),
  37. actualPage = book.turn('page'),
  38. view = book.turn('view');
  39. for (var page in tabs) {
  40. var isHere = $.inArray(parseInt(page, 10), view)!=-1;
  41. if (page>actualPage && !isHere)
  42. right.push('<a href="#page/' + page + '">' + tabs[page] + '</a>');
  43. else if (isHere) {
  44. if (page%2===0)
  45. left.push('<a href="#page/' + page + '" class="on">' + tabs[page] + '</a>');
  46. else
  47. right.push('<a href="#page/' + page + '" class="on">' + tabs[page] + '</a>');
  48. } else
  49. left.push('<a href="#page/' + page + '">' + tabs[page] + '</a>');
  50. }
  51. $('.sample-docs .tabs .left').html(left.join(''));
  52. $('.sample-docs .tabs .right').html(right.join(''));
  53. }
  54. // 总数/2-1 控制进度条
  55. function numberOfViews(book) {
  56. return book.turn('pages') / 2 + 1;
  57. }
  58. // 当前page/2-1 控制进度条
  59. function getViewNumber(book, page) {
  60. return parseInt((page || book.turn('page'))/2 + 1, 10);
  61. }
  62. //进度条按钮层级
  63. function moveBar(yes) {
  64. if (Modernizr && Modernizr.csstransforms) {
  65. $('#slider .ui-slider-handle').css({zIndex: yes ? -1 : 10000});
  66. }
  67. }
  68. //拖动滚动条显示的小图
  69. function setPreview(view) {
  70. var previewWidth = 115,
  71. previewHeight = 73,
  72. previewSrc = 'pics/preview.jpg',
  73. preview = $(_thumbPreview.children(':first')),
  74. numPages = (view==1 || view==$('#slider').slider('option', 'max')) ? 1 : 2,
  75. width = (numPages==1) ? previewWidth/2 : previewWidth;
  76. _thumbPreview.
  77. addClass('no-transition').
  78. css({width: width + 15,
  79. height: previewHeight + 15,
  80. top: -previewHeight - 30,
  81. left: ($($('#slider').children(':first')).width() - width - 15)/2
  82. });
  83. preview.css({
  84. width: width,
  85. height: previewHeight
  86. });
  87. if (preview.css('background-image')==='' ||
  88. preview.css('background-image')=='none') {
  89. preview.css({backgroundImage: 'url(' + previewSrc + ')'});
  90. setTimeout(function(){
  91. _thumbPreview.removeClass('no-transition');
  92. }, 0);
  93. }
  94. preview.css({backgroundPosition:
  95. '0px -'+((view-1)*previewHeight)+'px'
  96. });
  97. }