Changeset 31429 for main/trunk/greenstone3
- Timestamp:
- 2017-02-17T21:57:33+13:00 (7 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
main/trunk/greenstone3/web/interfaces/default/js/document_scripts.js
r31416 r31429 272 272 function focusSection(sectionID, level, tocDisabled) 273 273 { 274 expandAndExecute(sectionID, level, tocDisabled, function() 275 { 276 var topVal = $(document.getElementById("doc" + sectionID)).offset().top - 50; 277 $('html, body').stop().animate({scrollTop: topVal}, 1000); 278 }); 279 } 280 function focusAnchor(sectionID, level, tocDisabled, anchor) 281 { 282 expandAndExecute(sectionID, level, tocDisabled, function() 283 { 284 var target = document.getElementById(anchor); 285 if (!target){ 286 target = document.getElementsByName(anchor)[0]; 287 } 288 var topVal = $(target).offset().top - 50; 289 $('html, body').stop().animate({scrollTop: topVal}, 1000); 290 window.location.hash = anchor; 291 }); 292 } 293 function expandAndExecute(sectionID, level, tocDisabled, executeAfter) 294 { 274 295 if(!level) 275 296 { … … 279 300 if(level >= parts.length) 280 301 { 281 var topVal = $(document.getElementById("doc" + sectionID)).offset().top - 50; 282 $('html, body').stop().animate({scrollTop: topVal}, 1000); 302 executeAfter(); 283 303 return; 284 304 } … … 301 321 if(success) 302 322 { 303 focusSection(sectionID, level + 1, tocDisabled);323 expandAndExecute(sectionID, level + 1, tocDisabled, executeAfter); 304 324 } 305 325 }, tocDisabled); … … 307 327 else 308 328 { 309 focusSection(sectionID, level + 1, tocDisabled); 310 } 311 } 312 function focusAnchor(sectionID, level, tocDisabled, anchor) 313 { 314 if(!level) 315 { 316 level = 0; 317 } 318 var parts = sectionID.split("."); 319 if(level >= parts.length) 320 { 321 var target = document.getElementById(anchor); 322 if (!target){ 323 target = document.getElementsByName(anchor)[0]; 324 } 325 var topVal = $(target).offset().top - 50; 326 $('html, body').stop().animate({scrollTop: topVal}, 1000); 327 window.location.hash = anchor; 328 return; 329 } 330 331 var idToExpand = ""; 332 for(var i = 0; i < level + 1; i++) 333 { 334 if(i > 0) 335 { 336 idToExpand += "."; 337 } 338 339 idToExpand += parts[i]; 340 } 341 342 if(!isSectionExpanded(idToExpand)) 343 { 344 toggleSection(idToExpand, function(success) 345 { 346 if(success) 347 { 348 focusAnchor(sectionID, level + 1, tocDisabled, anchor); 349 } 350 }, tocDisabled); 351 } 352 else 353 { 354 focusAnchor(sectionID, level + 1, tocDisabled, anchor); 329 expandAndExecute(sectionID, level + 1, tocDisabled, executeAfter); 355 330 } 356 331 }
Note:
See TracChangeset
for help on using the changeset viewer.