【问题标题】:Linking in jQuery Makes Other Script Not WorkjQuery 中的链接使其他脚本无法工作
【发布时间】:2014-03-23 15:38:30
【问题描述】:

我还是脚本新手,这是一个简单的问题。

在我现在正在构建的站点上,我有一些运行良好的小脚本函数,但是当我在 jQuery 中链接另一个函数时,第一个函数停止工作。如果我删除 jQuery 链接,它们会再次起作用。

这是我目前拥有的功能:

这个是我需要 jQuery 的,<script src="http://code.jquery.com/jquery-1.11.0.min.js"></script>

// ~~~~~~~~~~ Header Background image rotation ~~~~~~~~~~ \\
$(document).ready(function(){
var header = $('.mainheader');

var backgrounds = new Array(
    'url(img/rainbow.jpg)'
  , 'url(img/chicks_on_grass.jpg)'
  , 'url(img/cattle_on_pasture.jpg)'
  , 'url(img/csa_bundle.jpg)'
);

var current = 0;

function nextBackground() {
    current++;
    current = current % backgrounds.length;
    header.css('background-image', backgrounds[current]);
}
setInterval(nextBackground, 10000);

header.css('background-image', backgrounds[0]);
});

这个下一个功能仍然可以正常工作

// ~~~~~~~~~~ ShowOrHide Element Onclick ~~~~~~~~~~ \\
function showOrHide(zap) {
 if (document.getElementById) {
  var abra = document.getElementById(zap).style;
  if (abra.display == "block") {
   abra.display = "none";
   } else {
   abra.display = "block";
  } 
  return false;
  } else {
  return true;
 }
}

这个已经不行了

// ~~~~~~~~~~ Form Email Hint ~~~~~~~~~~ \\
JotForm.init(function(){
  $('input_4').hint('ex: myname@example.com');
});

所有这三个函数都包含在<script language="JavaScript"></script> 标记中。

然后我有一个第三方 JavaScript 链接来控制我在网站上的表单上的一些内容。 <script src="http://max.jotfor.ms/min/g=jotform?3.1.1667" type="text/javascript"></script> 这也不适用于 JQuery。

我不知道发生了什么,整天都在研究它。任何帮助表示赞赏。

【问题讨论】:

  • 调试它!然后告诉我们
  • 您的 jotform 脚本是否需要更新版本的 jQuery?
  • @ntgCleaner 1.11.01.x 分支的最新稳定版本...
  • 我不确定它需要哪个版本。只是认为更新会更好。
  • language="JavaScript" 已弃用...

标签: javascript jquery


【解决方案1】:

这是一个冲突问题,请参阅此页面以获取更多信息documentation 这样做:

<script src="http://code.jquery.com/jquery-1.11.0.min.js"></script>
<script>

var $j = jQuery.noConflict();
// ~~~~~~~~~~ Header Background image rotation ~~~~~~~~~~ \\
$j(document).ready(function(){
var header = $j('.mainheader');

var backgrounds = new Array(
    'url(img/rainbow.jpg)'
  , 'url(img/chicks_on_grass.jpg)'
  , 'url(img/cattle_on_pasture.jpg)'
  , 'url(img/csa_bundle.jpg)'
);

var current = 0;

function nextBackground() {
    current++;
    current = current % backgrounds.length;
    header.css('background-image', backgrounds[current]);
}
setInterval(nextBackground, 10000);

header.css('background-image', backgrounds[0]);
});

// ~~~~~~~~~~ ShowOrHide Element Onclick ~~~~~~~~~~ \\
function showOrHide(zap) {
 if (document.getElementById) {
  var abra = document.getElementById(zap).style;
  if (abra.display == "block") {
   abra.display = "none";
   } else {
   abra.display = "block";
  } 
  return false;
  } else {
  return true;
 }
}
</script>

【讨论】:

  • 我刚试过这个,现在“背景图像旋转”不起作用,但其余的都起作用。
  • 对不起,我错过了您所做的一个小改动。现在似乎可以工作了。
  • 太棒了!如果您发现此答案有用,请考虑投票并将其标记为已接受的答案,以便它对其他有类似问题的用户仍然有用。谢谢!
  • 会的!非常感谢!
猜你喜欢
  • 2011-12-26
  • 2013-08-26
  • 1970-01-01
  • 2014-05-12
  • 2015-07-04
  • 2018-07-18
  • 1970-01-01
  • 1970-01-01
  • 2016-05-27
相关资源
最近更新 更多