Javascript添加e.preventDefault();脚本

时间:2014-11-03 11:42:08

标签: javascript

一如既往地感谢你们的帮助!

我有一组在页面上运行的脚本,并且一直存在与它们相互冲突的问题。我已经设法用e.preventDefault()修复了大部分内容。但只是不能解决这个问题如何构建它。对我而言,可能是星期一早上的傻瓜,说实话,大声笑,用java脚本非常绿色。

$(document.body).on('change', 'select#category-navbar', function() {
$('.selected-value').text($(this).val());
});

但是,任何帮助都会受到超级赞赏,因为我只需要添加e.preventDefault();这个剧本应该都是花花公子。

修改

这是上述似乎默认的脚本:

$(document).ready(function() {

    $('.verdana').click(function(e) {
    $('#changeMe').css('font-family','verdana');
    e.preventDefault();  
});

    $('.arial').click(function(e) {
    $('#changeMe').css('font-family','arial');
    e.preventDefault();  
});

    $('.tahoma').click(function(e) {
    $('#changeMe').css('font-family','tahoma');
    e.preventDefault();  
});

    $('.times').click(function(e) {
    $('#changeMe').css('font-family','times');
    e.preventDefault();  
});

    $('.copperplatebold').click(function(e) {
    $('#changeMe').css('font-family','copperplatebold');
    e.preventDefault();  
});

    $('swiss721').click(function(e) {
    $('#changeMe').css('font-family','swiss721');
    e.preventDefault();  
});

    $('.baskerville').click(function(e) {
    $('#changeMe').css('font-family','baskerville');
    e.preventDefault();  
});

    $('.oldenglish').click(function(e) {
    $('#changeMe').css('font-family','oldenglish');
    e.preventDefault();  
});


    $('.timesnewroman').click(function(e) {
    $('#changeMe').css('font-family','timesnewroman');
    e.preventDefault();  
});

    $('.castellar').click(function(e) {
    $('#changeMe').css('font-family','castellar');
    e.preventDefault();  
});

    $('.calibri').click(function(e) {
    $('#changeMe').css('font-family','calibri');
    e.preventDefault();  
});

    $('.scriptmtbold').click(function(e) {
    $('#changeMe').css('font-family','scriptmtbold');
    e.preventDefault();  
});
 $('.lucidacal').click(function(e) {

    e.preventDefault();  
});

// select font in dropdown list to change font-family of #changeMe
$('select').change(function() {
    if($(this).val() == "Default font"){
        $('#changeMe').css('font-family',"");
    }else{
        $('#changeMe').css('font-family',$(this).val());
    }

}); 

e.preventDefault(); });

4 个答案:

答案 0 :(得分:2)

您应该在docs

上阅读更多内容
  

.change([eventData],handler)

     

handler:类型:Function(Event eventObject)

$(document.body).on('change', 'select#category-navbar', function(e) { // add event
    e.preventDefault(); // add prevent default
    $('.selected-value').text($(this).val());
});

答案 1 :(得分:1)

你是说这个吗?

$(document.body).on('change', 'select#category-navbar', function(e) {
   $('.selected-value').text($(this).val());
   e.preventDefault();
});

答案 2 :(得分:0)

您应该在函数中添加一个事件对象。

$(document.body).on('change', 'select#category-navbar', function(event) {
   $('.selected-value').text($(this).val());
   event.preventDefault();
});

答案 3 :(得分:0)

e.preventDefault() stops the browser from performing the default action, but lets the event propagate to all event handlers

如果您想停止其他活动处理程序,请根据具体情况致电e.stopPropagation()e.stopImmediatePropagation()

但这有点危害,因为它取决于你绑定事件监听器的元素,以及它们绑定的顺序。