mirror of
https://github.com/Hopiu/angular.js.git
synced 2026-05-13 17:23:11 +00:00
Example snippets now have full html snippets
This commit is contained in:
parent
6b8ed42670
commit
43a4ff4cdf
1 changed files with 36 additions and 10 deletions
|
|
@ -1,15 +1,24 @@
|
||||||
(function(){
|
(function(){
|
||||||
|
|
||||||
|
var angularJsUrl;
|
||||||
|
var scripts = document.getElementsByTagName("script");
|
||||||
|
var filename = /(.*\/)angular([^\/]*)/;
|
||||||
|
for(var j = 0; j < scripts.length; j++) {
|
||||||
|
var src = scripts[j].src;
|
||||||
|
if (src && src.match(filename)) {
|
||||||
|
angularJsUrl = src;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
var HTML_TEMPLATE =
|
var HTML_TEMPLATE =
|
||||||
'<!DOCTYPE HTML>\n' +
|
'<!doctype html>\n' +
|
||||||
'<html xmlns:ng="http://angularjs.org">\n' +
|
'<html xmlns:ng="http://angularjs.org">\n' +
|
||||||
' <head>\n' +
|
' <script type="text/javascript" ng:autobind\n' +
|
||||||
' <title>Angular Example</title>\n' +
|
' src="' + angularJsUrl + '"></script>\n' +
|
||||||
' <script type="text/javascript"\n' +
|
' <body>\n' +
|
||||||
' src="../angular.js" ng:autobind></script>\n' +
|
|
||||||
' </head>\n' +
|
|
||||||
' <body>\n' +
|
|
||||||
'_HTML_SOURCE_\n' +
|
'_HTML_SOURCE_\n' +
|
||||||
' </body>\n' +
|
' </body>\n' +
|
||||||
'</html>';
|
'</html>';
|
||||||
|
|
||||||
angular.widget('doc:example', function(element){
|
angular.widget('doc:example', function(element){
|
||||||
|
|
@ -20,16 +29,20 @@
|
||||||
exampleSrc = example.text(),
|
exampleSrc = example.text(),
|
||||||
scenario = element.find('doc\\:scenario').eq(0);
|
scenario = element.find('doc\\:scenario').eq(0);
|
||||||
|
|
||||||
|
var code = indent(exampleSrc);
|
||||||
var tabs = angular.element(
|
var tabs = angular.element(
|
||||||
'<ul class="doc-example">' +
|
'<ul class="doc-example">' +
|
||||||
'<li class="doc-example-heading"><h3>Source</h3></li>' +
|
'<li class="doc-example-heading"><h3>Source</h3></li>' +
|
||||||
'<li class="doc-example-source" ng:non-bindable><pre class="brush: js; brush: xml;"></pre></li>' +
|
'<li class="doc-example-source" ng:non-bindable>' +
|
||||||
|
'<pre class="brush: js; html-script: true; highlight: [' +
|
||||||
|
code.hilite + ']; toolbar: false;"></pre></li>' +
|
||||||
'<li class="doc-example-heading"><h3>Live Preview</h3></li>' +
|
'<li class="doc-example-heading"><h3>Live Preview</h3></li>' +
|
||||||
'<li class="doc-example-live">' + exampleSrc +'</li>' +
|
'<li class="doc-example-live">' + exampleSrc +'</li>' +
|
||||||
'<li class="doc-example-heading"><h3>Scenario Test</h3></li>' +
|
'<li class="doc-example-heading"><h3>Scenario Test</h3></li>' +
|
||||||
'<li class="doc-example-scenario"><pre class="brush: js">' + scenario.text() + '</pre></li>' +
|
'<li class="doc-example-scenario"><pre class="brush: js">' + scenario.text() + '</pre></li>' +
|
||||||
'</ul>');
|
'</ul>');
|
||||||
tabs.find('li.doc-example-source > pre').text(exampleSrc);
|
|
||||||
|
tabs.find('li.doc-example-source > pre').text(HTML_TEMPLATE.replace('_HTML_SOURCE_', code.html));
|
||||||
|
|
||||||
element.html('');
|
element.html('');
|
||||||
element.append(tabs);
|
element.append(tabs);
|
||||||
|
|
@ -46,4 +59,17 @@
|
||||||
SyntaxHighlighter.highlight();
|
SyntaxHighlighter.highlight();
|
||||||
};
|
};
|
||||||
});
|
});
|
||||||
|
|
||||||
|
function indent(text) {
|
||||||
|
var lines = text.split(/\n/);
|
||||||
|
var lineNo = [];
|
||||||
|
while (lines[0].match(/^\s*$/)) lines.shift();
|
||||||
|
while (lines[lines.length - 1].match(/^\s*$/)) lines.pop();
|
||||||
|
for ( var i = 0; i < lines.length; i++) {
|
||||||
|
lines[i] = ' ' + lines[i];
|
||||||
|
lineNo.push(6 + i);
|
||||||
|
}
|
||||||
|
return {html: lines.join('\n'), hilite: lineNo.join(',') };
|
||||||
|
};
|
||||||
|
|
||||||
})();
|
})();
|
||||||
Loading…
Reference in a new issue