Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/470.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 将jquery插件应用于dom元素_Javascript_Jquery_Plugins_Jquery Plugins - Fatal编程技术网

Javascript 将jquery插件应用于dom元素

Javascript 将jquery插件应用于dom元素,javascript,jquery,plugins,jquery-plugins,Javascript,Jquery,Plugins,Jquery Plugins,我将处理应用程序前端部分的所有javascript代码存储在frontend.js中。 若dom元素在此页面上不存在,但我尝试应用插件javascript抛出错误 样本: 我找到了一个解决这个问题的方法,那就是检查尺寸 if($('#normalImage').size() > 0) //apply plugin 但是我不确定什么是正确的方法检查.length并将其与零匹配以检查集合是否有任何元素是正确的方法 从jquery站点: .size()方法在功能上等同于.length属性; 但

我将处理应用程序前端部分的所有javascript代码存储在frontend.js中。 若dom元素在此页面上不存在,但我尝试应用插件javascript抛出错误 样本:

我找到了一个解决这个问题的方法,那就是检查尺寸

if($('#normalImage').size() > 0)
//apply plugin

但是我不确定什么是正确的方法

检查.length并将其与零匹配以检查集合是否有任何元素是正确的方法

从jquery站点:

.size()方法在功能上等同于.length属性; 但是,.length属性是首选的,因为它没有 函数调用的开销


这是检查.length并将其与零匹配以检查集合是否包含任何元素的正确方法

从jquery站点:

.size()方法在功能上等同于.length属性; 但是,.length属性是首选的,因为它没有 函数调用的开销


您可能正在处理一个糟糕的插件,因为当jquery选择器为空时,插件的任务是不抛出错误。但在这种情况下,检查尺寸或长度是正确的工作方式

最好使用这个:

var dom = $('#normalImage');
if(dom.length > 0) 
{
   dom.Jcrop({
      setSelect:[ 0, 0, 48, 48 ],
      sideHandles:false,
      onChange:showPreview,
      onSelect:showPreview,
      aspectRatio:1
   });
}

您可能正在处理一个糟糕的插件,因为当jquery选择器为空时,插件的任务是不抛出错误。但在这种情况下,检查尺寸或长度是正确的工作方式

最好使用这个:

var dom = $('#normalImage');
if(dom.length > 0) 
{
   dom.Jcrop({
      setSelect:[ 0, 0, 48, 48 ],
      sideHandles:false,
      onChange:showPreview,
      onSelect:showPreview,
      aspectRatio:1
   });
}

如果要检查dom元素是否存在,可以使用:

if ( $("#normalImage").length > 0 ) {
  //do something
}

如果要检查dom元素是否存在,可以使用:

if ( $("#normalImage").length > 0 ) {
  //do something
}

你是说
还不存在吗?您可以将代码包装在
$(docuemnt)中。ready()
您的意思是
还不存在吗?您可以将代码包装在一个
$(docuemnt).ready()
if($(“#myelement”).length)
就足够了,即使您的解决方案可能更容易理解:)
if($(“#myelement”).length)
就足够了,即使您的解决方案可能更容易理解:)