这个JavaScript函数单独工作,但不与其他JavaScript函数
我有这个JavaScript:这个JavaScript函数单独工作,但不与其他JavaScript函数
<script type="text/javascript">
$(document).ready(function($) {
$('#target-share ul li').click(function() {
$('input#shareto').val($(this).data('val'));
});
});
</script>
,它确实可以作为我的预期。但是当我添加此另一个JavaScript做下拉动画,即JavaScript的不工作了:
<script type="text/javascript">
$(document).ready(function() {
$("#select-shareto a").click(function() {
var newClass = $(this).find("span").attr('class');
var newText = $(this).find("span").text();
$("#select-shareto a").removeClass("selected");
$(this).addClass("selected");
$("a#to-chosen span").removeClass().addClass(newClass).text(newText);
$("a#to-chosen").toggleClass("opened");
$('#select-shareto').slideToggle('fast');
return false;
});
$('a#to-chosen').click(function() {
$(this).toggleClass("opened");
$('#select-shareto').slideToggle('fast', function() {
// Animation complete.
});
});
});
</script>
的JavaScript的实际影响这个HTML代码:
<div id="target-share">
<a href="#" title="" id="to-chosen" class="default"><span class="to-admin">Admin</span></a>
<ul id="select-shareto">
<li data-val="0-1">
<a href="#" title="" class="selected"><span class="to-Finance">Finance</span></a>
</li>
<li data-val="1-1">
<a href="#" title=""><span class="to-admin-private">Admin Private</span></a>
</li>
<li data-val="1-0">
<a href="#" title=""><span class="to-ceo">CEO</span></a>
</li>
<li data-val="0-0">
<a href="#" title=""><span class="to-ceo-private">CEO Private</span></a>
</li>
</ul>
<input id="shareto" type="text" value="0-1" name="shareto">
</div><!-- #target-share -->
任何想法如何使这些2 JavaScript并行工作?谢谢。
$("#select-shareto a").click(function() {
...
return false;
});
在此,你停止了此事件的进一步传播 - 此click
事件的其他处理程序不会被调用了。相反,使用这样的:
$("#select-shareto a").click(function (e) {
e.preventDefault();
...
});
它工作!多谢兄弟!!!我必须再等3分钟才能切换你的答案......伟大的工作,兄弟!再次感谢... – 2012-07-27 18:36:18
好的电话Bergi。 – kakridge 2012-07-27 18:45:23
我假设你想插入代码中的注释动画完全是如果是这样,你只需要把代码:$('#target-share ul li').click(function() { $('input#shareto').val($(this).data('val'));});
您的代码已经被包裹在一个$(document).ready
所以你不需要另一个。
他们单独工作,他们更愿意通过自己。 – kakridge 2012-07-27 18:23:39
Javascript控制台中是否有任何内容?也许你错误地放置了一个支架 – millimoose 2012-07-27 18:23:53
为什么你在第一个函数中将“$”作为参数传递给“ready”事件? – 2012-07-27 18:28:37