我需要自动重写一个触发函数的链接(即时编写)并将其转换为不引人注目的JavaScript代码。
示例:
link_to_function 'hey', "alert('hey')"
变为:
<a href='#' onclick="alert('hey')"> hey </a>
我的想法是在HTML元素中创建一个引用,并在JS中创建一个对象来存储所有相关的代码。然后用更干净,不引人注目的方式转换前一个例子 例如:
<a href='#' data-href='rndReference'> hey </a>
并且在JS中(code
变量是我从标记中删除的JS代码):
storageCode[rndReference] = new Function(code)
每个代码串都通过一个新的Function(code)
传递,以便将其称为函数。
这种方法有什么问题?什么方法会更好?
答案 0 :(得分:0)
这是正常的做法。
<a href='#' onclick="alert('hey')"> hey </a>
变为:
<a href='#' data-role='alert'> hey </a>
然后在CoffeeScript文件中:
$ ->
$("a[data-role='alert']").on("click", (event) ->
event.preventDefault()
alert("hey")
)
或者,如果您不喜欢CoffeeScript:
$(document).ready(function() {
$("a[data-role='alert']").on("click", function(event) {
event.preventDefault();
alert("hey");
});
)