2012-05-31 40 views
0

我是新jQuery的内容不工作在铬,我有一个关于使用jQuery使用的疑问与Processing.jsjQuery插件Processing.js时上传的网页

我有一些的侧栏链接;他们每个人都是一个教训,而这些教训之一,我有一个

<p>blablablablabla</p> 
<div id='processing'></div> 

()

然后,当用户单击课(内容同上),网页更新内容,并调用一个jQuery插件,如果发现该ID #processing,呼吁

$.Processing('#processing', 'afile.pde') 

(插件)

(function(){ 

var src = './processing-1.3.6.js' 

$.Processing = function(parent, file){ 
    var appendScript = function(){ 
     $('head').append(function(){ 
      return $('<script></script>').attr('src', src).html('added processing script'); 
     }) 
    } 

    var appendProcessing = function(){ 
     $(parent).append(function(){ 
      var $c = $('<canvas></canvas>'); 
      var p = Processing.loadSketchFromSources($c, [file]) 
      return $c; 
     });  
    } 

    appendScript(); 
    appendProcessing(); 
} 
}()) 

问题是函数'$('head')追加没有被调用。在Chrome

由于

回答

1

1)Processing.loadSketchFromSources测试需要一个普通的createElement对象,而不是jQuery对象。所以你需要改变这一行:

错误:var $ c = $('< canvas> </canvas>');
正确:var $ c = document.createElement('canvas');

如果你真的需要jQuery对象,那么你就需要使用$ C从jQuery对象得到纯净的createElement [0],而不是$ C,所以这也将工作:
变种P = Processing.loadSketchFromSources ($ c [0],[file]);

2)不要使用</SCRIPT>字符串的脚本标记内,因为这将结束你的脚本:

错误:返回$( '<脚本> </SCRIPT>')
正确:返回$( '< SCRIPT> </SCR '+' IPT>')

3)不需要内<脚本的HTML标签>,因为剧本没有的html代码里面:
HTML未使用:$('< script> < /scr'+'ipt>').attr('src',src).html('added processing script');
正确:$('< script> < /scr'+'ipt>').attr('src',src);

这是一个网页的完整的脚本正常工作(加载和运行.pde文件中的外部处理),如果你想尝试,看看代码:
http://www.js.do/processing-js/gcravista-sample.htm

+0

喜罗德里戈!现在有效,但我不明白$('

相关问题