parent
089d934547
commit
7c30ae7002
File diff suppressed because one or more lines are too long
@ -0,0 +1,53 @@ |
||||
/** |
||||
* preview plugin |
||||
* @param selector |
||||
* @param target_selector |
||||
*/ |
||||
function Preview(selector, target_selector) { |
||||
|
||||
// get input element
|
||||
function get_input($e) { |
||||
return $e.find(".js-preview-input").eq(0); |
||||
} |
||||
|
||||
// get result html container element
|
||||
function get_container($t) { |
||||
if ($t.hasClass("js-preview-container")) { |
||||
return $t |
||||
} |
||||
return $t.find(".js-preview-container").eq(0); |
||||
} |
||||
|
||||
var $e = $(selector); |
||||
var $t = $(target_selector); |
||||
|
||||
var $ipt = get_input($t); |
||||
if (!$ipt.length) { |
||||
console.log("[preview]: no preview input"); |
||||
return |
||||
} |
||||
var $cnt = get_container($t); |
||||
if (!$cnt.length) { |
||||
console.log("[preview]: no preview container"); |
||||
return |
||||
} |
||||
|
||||
|
||||
// call api via ajax
|
||||
$e.on("click", function () { |
||||
$.post("/api/v1/markdown", { |
||||
text: $ipt.val() |
||||
}, function (html) { |
||||
$cnt.html(html); |
||||
}) |
||||
}); |
||||
|
||||
console.log("[preview]: init preview @", selector, "&", target_selector); |
||||
} |
||||
|
||||
|
||||
$.fn.extend({ |
||||
markdown_preview: function (target) { |
||||
Preview(this, target); |
||||
} |
||||
}); |
Loading…
Reference in new issue