1/* Insert Script Plugin 2 * 3 * 4 * Copyright (c) 2008 Kevin Martin (http://synarchydesign.com/insert) 5 * Licensed under the GPL license: 6 * http://www.gnu.org/licenses/gpl.html 7 * 8 */ 9jQuery.insert = function(file) 10{ 11 var data = []; 12 var data2 = []; 13 14 if (typeof file == 'object') 15 { 16 data = file; 17 file = data.src !== undefined ? data.src : false; 18 file = file === false && data.href !== undefined ? data.href : file; 19 file = file === false ? file2 : false; 20 } 21 22 if (typeof file == 'string' && file.length) 23 { 24 var index = file.lastIndexOf('.'); 25 var index2 = file.replace('\\', '/').lastIndexOf('/') + 1; 26 var ext = file.substring(index + 1, file.length); 27 } 28 29 switch(ext) 30 { 31 case 'js': 32 data2 = { 33 elm: 'script', 34 type: 'text/javascript', 35 src: file 36 }; 37 break; 38 39 case 'css': 40 data2 = { 41 elm: 'link', 42 rel: 'stylesheet', 43 type: 'text/css', 44 href: file 45 }; 46 break; 47 48 default: 49 data2 = {elm: 'link'}; 50 break; 51 } 52 53 data2.id = 'script-' + (typeof file == 'string' && file.length ? 54 file.substring(index2, index) : Math.round(Math.rand() * 100)); 55 56 for (var i in data) 57 { 58 data2[i] = data[i]; 59 } 60 61 data = data2; 62 var tag = document.createElement(data.elm); 63 64 delete data.elm; 65 66 for (i in data) 67 { 68 tag.setAttribute(i, data[i]); 69 } 70 71 jQuery('head').append(tag); 72 73 return jQuery('#' + data.id); 74};
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.