1_.extend(DV.Schema.events, { 2 handleNavigation: function(e){ 3 var el = this.viewer.$(e.target); 4 var triggerEl = el.closest('.DV-trigger'); 5 var noteEl = el.closest('.DV-annotationMarker'); 6 var chapterEl = el.closest('.DV-chapter'); 7 if (!triggerEl.length) return; 8 9 if (el.hasClass('DV-expander')) { 10 return chapterEl.toggleClass('DV-collapsed'); 11 12 }else if (noteEl.length) { 13 var aid = noteEl[0].id.replace('DV-annotationMarker-',''); 14 var annotation = this.models.annotations.getAnnotation(aid); 15 var pageNumber = parseInt(annotation.index,10)+1; 16 17 if(this.viewer.state === 'ViewText'){ 18 this.loadText(annotation.index); 19 20 // this.viewer.history.save('text/p'+pageNumber); 21 }else{ 22 if (this.viewer.state === 'ViewThumbnails') { 23 this.viewer.open('ViewDocument'); 24 } 25 this.viewer.pageSet.showAnnotation(annotation); 26 } 27 28 } else if (chapterEl.length) { 29 // its a header, take it to the page 30 chapterEl.removeClass('DV-collapsed'); 31 var cid = parseInt(chapterEl[0].id.replace('DV-chapter-',''), 10); 32 var chapterIndex = parseInt(this.models.chapters.getChapterPosition(cid),10); 33 var pageNumber = parseInt(chapterIndex,10)+1; 34 35 if(this.viewer.state === 'ViewText'){ 36 this.loadText(chapterIndex); 37 // this.viewer.history.save('text/p'+pageNumber); 38 }else if(this.viewer.state === 'ViewDocument' || 39 this.viewer.state === 'ViewThumbnails'){ 40 this.helpers.jump(chapterIndex); 41 // this.viewer.history.save('document/p'+pageNumber); 42 if (this.viewer.state === 'ViewThumbnails') { 43 this.viewer.open('ViewDocument'); 44 } 45 }else{ 46 return false; 47 } 48 49 }else{ 50 return false; 51 } 52 } 53});
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.