Ihre einfachste schnellste Möglichkeit, eine einzelne Webanwendung ohne einzelne JavaScript -Code zu haben.
Live -Demo
Die Demo ist nur statische Dateien. Möglicherweise möchten Sie dieses Verzeichnis in Ihrem Server -Dokument -Root einfügen oder einfach den folgenden Befehl eingeben, mit dem ein einfacher HTTP -Server auf Port 8000 gestartet wird, und dann Ihren Browser auf http: // localhost: 8000/index.html richten
python -m SimpleHTTPServerel - Dom -Element$target - ein jQuery -Objekt des targetwhere kann einer von: closest , inside oder doc sein, was ein ganzes Dokument bedeutethow kann einer von: prepend , append oder replace < a data-toggle =" ajax-load " href =" /posts/today.json " data-target =" .posts " > my link </ a >
< button type =" button " data-toggle =" ajax-ops " > my button </ a >
< div class =" me " data-refresh-url =" /user/me.json " data-template =" user_info " > </ div >
< div class =" posts " data-template =" posts_titles " > </ div >
< div class =" posts " data-template =" full_posts " > </ div >Sie können definieren
data-toggleajax-load - abgerufener Text, HTML -Inhalt oder reine Daten und anwenden Sie ihn auf Ziele (en) an.ajax-ops -holt JSON OP-Codesajax-modal * erfordert eine Erweiterungdata-target - Der ausgewählte Selektor, um den abgerufenen Inhalt darauf anzuwendendata-url (die manchmal durch href oder data-refresh-url ersetzt werden kann)data-template - Die Vorlage, die zum Rendern von reinen Daten verwendet werden solldata-format - kann text , html oder json seindata-how - kann einer von: prepend , append oder replaceVorlagen sind Funktionen, die JSON -Objekt und zurückgeben.
ajax_ops.flashmsg({html:, text:, type:info|danger, selector:, base_target:$obj, where:closest|inside|''})ajax_ops.flashmsg({text:'not found', type:'danger');ajax_ops.flashmsg.call(this, {text:'not found', type:'danger', selector:'.modal', where:'closest'});self.flashmsg_opts.selector , der .content:first istonsubmit="return ajax_ops.submit_form(this, params);"params sind optionalparams.target=$objparams.cb=function($target, data){}ajax_ops.loads({html: CONTENT, text: CONTENT, data: JSON, template: NAME, el: ELEMENT, how: prepend|append|replace})ajax_ops.load({el:element, url:, how: prepend|append|replace, selector:, where:closest|inside|, })ajax_ops.refresh(element|selector, params)params sind optionalparams.whereparams.base_elementajax_ops.load und akzeptiert seine Parameter wie wie howajax_ops.refresh('.me')ajax_ops.exec_ops([ [op1, selector1, params1], [op2, selector2, params2],.. ])removerefreshloadattr {set:{k:v}, unset:[k1,k2]}class {add:[], remove:[], toggle[]}ajax_ops.ops['my_opcode']=function(el, params){} hinzufügt // register templates
ajax_ops . templates = Handlebars . templates ;
// nice hack
Handlebars . partials = Handlebars . templates ;
// You might want to disable usual links behavior
$ ( 'a[data-toggle]' ) . click ( function ( e ) { e . preventDefault ( ) } ) ; Copyright 2014 Muayyad Alsadi
Lizenziert unter der Apache -Lizenz, Version 2.0 (der "Lizenz"); Sie dürfen diese Arbeit nur in Einklang mit der Lizenz verwenden. Sie können eine Kopie der Lizenz in der Lizenzdatei erhalten oder unter:
http://www.apache.org/licenses/license-2.0
Sofern nicht nach geltendem Recht oder schriftlich zu vereinbart wird, wird die im Rahmen der Lizenz verteilte Software auf "As is" -Basis ohne Gewährleistung oder Bedingungen jeglicher Art ausdrücklich oder impliziert verteilt. Siehe die Lizenz für die spezifischen Sprachberechtigungen und Einschränkungen im Rahmen der Lizenz.