这可能吗?
<div id="anything">I will change</div>
<div id="id" jq="$('#anything').css({background: 'red'})"></div>
var x = '$('#id').attr('jq')';
jQuery.call(x);
Run Code Online (Sandbox Code Playgroud)
基本上我想jq在任何标签上使用一个属性就像onclick调用javascript语句的html上的一样.
顺便说一句jQuery.call()用于演示目的它不起作用...
您会使用,eval()但您正在做的事情似乎是一个非常糟糕的主意:
var x = $('#id').attr('jq');
eval(x);
Run Code Online (Sandbox Code Playgroud)
这个坏的原因是你没有将功能与结构分开.HTML旨在描述结构,而不是交互性和功能.
JavaScript旨在提供交互和增强,但不提供结构.像这样使用jQuery内联违反了这种分离.只是值得深思...
小智 7
您可以使用新的功能MDN
身体:
<div id='MyFunc' func="alert('Hello!');" >On Load raise an Alert</div>
Run Code Online (Sandbox Code Playgroud)
JS:
var myFunc = myFunc || document.getElementById('MyFunc'),
hello = new Function( myFunc.getAttribute('func'));
hello.call(this);
Run Code Online (Sandbox Code Playgroud)
试试看:
希望能帮助到你!