breadcrumbs-optimized.js
上传用户:quxuerui
上传日期:2018-01-08
资源大小:41811k
文件大小:3k
源码类别:

网格计算

开发平台:

Java

  1. /*
  2. * Licensed to the Apache Software Foundation (ASF) under one or more
  3. * contributor license agreements.  See the NOTICE file distributed with
  4. * this work for additional information regarding copyright ownership.
  5. * The ASF licenses this file to You under the Apache License, Version 2.0
  6. * (the "License"); you may not use this file except in compliance with
  7. * the License.  You may obtain a copy of the License at
  8. *
  9. *     http://www.apache.org/licenses/LICENSE-2.0
  10. *
  11. * Unless required by applicable law or agreed to in writing, software
  12. * distributed under the License is distributed on an "AS IS" BASIS,
  13. * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  14. * See the License for the specific language governing permissions and
  15. * limitations under the License.
  16. */
  17. var PREPREND_CRUMBS=new Array();
  18. var link1="@skinconfig.trail.link1.name@";
  19. var link2="@skinconfig.trail.link2.name@";
  20. var link3="@skinconfig.trail.link3.name@";
  21. if(!(link1=="")&&!link1.indexOf( "@" ) == 0){
  22.   PREPREND_CRUMBS.push( new Array( link1, @skinconfig.trail.link1.href@ ) ); }
  23. if(!(link2=="")&&!link2.indexOf( "@" ) == 0){
  24.   PREPREND_CRUMBS.push( new Array( link2, @skinconfig.trail.link2.href@ ) ); }
  25. if(!(link3=="")&&!link3.indexOf( "@" ) == 0){
  26.   PREPREND_CRUMBS.push( new Array( link3, @skinconfig.trail.link3.href@ ) ); }
  27. var DISPLAY_SEPARATOR=" > ";
  28. var DISPLAY_PREPREND=" > ";
  29. var DISPLAY_POSTPREND=":";
  30. var CSS_CLASS_CRUMB="breadcrumb";
  31. var CSS_CLASS_TRAIL="breadcrumbTrail";
  32. var CSS_CLASS_SEPARATOR="crumbSeparator";
  33. var FILE_EXTENSIONS=new Array( ".html", ".htm", ".jsp", ".php", ".php3", ".php4" );
  34. var PATH_SEPARATOR="/";
  35. function sc(s) {
  36. var l=s.toLowerCase();
  37. return l.substr(0,1).toUpperCase()+l.substr(1);
  38. }
  39. function getdirs() {
  40. var t=document.location.pathname.split(PATH_SEPARATOR);
  41. var lc=t[t.length-1];
  42. for(var i=0;i < FILE_EXTENSIONS.length;i++)
  43. {
  44. if(lc.indexOf(FILE_EXTENSIONS[i]))
  45. return t.slice(1,t.length-1); }
  46. return t.slice(1,t.length);
  47. }
  48. function getcrumbs( d )
  49. {
  50. var pre = "/";
  51. var post = "/";
  52. var c = new Array();
  53. if( d != null )
  54. {
  55. for(var i=0;i < d.length;i++) {
  56. pre+=d[i]+postfix;
  57. c.push(new Array(d[i],pre)); }
  58. }
  59. if(PREPREND_CRUMBS.length > 0 )
  60. return PREPREND_CRUMBS.concat( c );
  61. return c;
  62. }
  63. function gettrail( c )
  64. {
  65. var h=DISPLAY_PREPREND;
  66. for(var i=0;i < c.length;i++)
  67. {
  68. h+='<a href="'+c[i][1]+'" >'+sc(c[i][0])+'</a>';
  69. if(i!=(c.length-1))
  70. h+=DISPLAY_SEPARATOR; }
  71. return h+DISPLAY_POSTPREND;
  72. }
  73. function gettrailXHTML( c )
  74. {
  75. var h='<span class="'+CSS_CLASS_TRAIL+'">'+DISPLAY_PREPREND;
  76. for(var i=0;i < c.length;i++)
  77. {
  78. h+='<a href="'+c[i][1]+'" class="'+CSS_CLASS_CRUMB+'">'+sc(c[i][0])+'</a>';
  79. if(i!=(c.length-1))
  80. h+='<span class="'+CSS_CLASS_SEPARATOR+'">'+DISPLAY_SEPARATOR+'</span>'; }
  81. return h+DISPLAY_POSTPREND+'</span>';
  82. }
  83. if(document.location.href.toLowerCase().indexOf("http://")==-1)
  84. document.write(gettrail(getcrumbs()));
  85. else
  86. document.write(gettrail(getcrumbs(getdirs())));