2015-05-13 2 views
-1

Я хочу добиться того, чтобы щелкнуть текст на экране, а затем текст, который я нажал, изменил на другое слово.нажатие на слово, которое меняется на другое?

Например:

, если нажать на ссылку 'Просмотр в виде списка' Я хочу, чтобы изменить на 'Эскизы'

Вот моя попытка ниже:

HTML код:

<div class="page-intro"> 
    <h2>Artists</h2> 
    <h2 class="thumb-to-list">View As List</h2> 
</div> 

Код css:

.page-intro { 
    background: orange; 
} 

.page-intro h2 { 
    font-weight: normal; 
    display: inline-block; 
} 

.thumb-to-list { 
    float: right; 
} 

Вот моя попытка коды, но это не работает:

$('.thumb-to-list').toggle(function() { 
    $('.thumb-to-list').text('View As Thumbnails'); 
}, function() { 
    $('.thumb-to-list').text('View As List'); 
}); 

ответ

2

Там нет необходимости использовать on() функции, потому что Ваш DOM не изменения, изменяя его значение/текст. Вы должны просто использовать функцию click().

$('.thumb-to-list').click(function() { 
    $(this).text('View As Thumbnails'); 
} 
+0

Http: // StackOverflow. com/вопросы/9122078/разница между-onclick-vs-click –

+2

Я знаю, в чем разница между этими функциями. Здесь нет необходимости использовать .on(). –

+0

.click старый и в конце концов будет устаревшим. Люди перестали использовать это много веков назад. Перейти узнать некоторые jquery –

2

Вы можете использовать непосредственно в click событии:

$(".thumb-to-list").click(function() { 
    if ($(this).text() == "View As Thumbnails") 
     $(this).text("View As List") 
    else 
     $(this).text("View As Thumbnails"); 
}); 
+0

Да, я видел, что другой парень опубликовал это. дал вам взнос с тех пор, как я ошибся –

2

Вы должны связать свои мышь на событие

$('.thumb-to-list').on('click', function() { 
 
    if ($(this).text() == "View As List") { 
 
    $(this).html('View As Thumbnails'); 
 
    } else { 
 
    $(this).html('View As List'); 
 
    } 
 
});
.page-intro { 
 
    background: orange; 
 
} 
 
.page-intro h2 { 
 
    font-weight: normal; 
 
    display: inline-block; 
 
} 
 
.thumb-to-list { 
 
    float: right; 
 
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script> 
 
<div class="page-intro"> 
 
    <h2>Artists</h2> 
 
    <h2 class="thumb-to-list">View As List</h2> 
 
</div>

+0

Не используйте '.click()', вместо этого используйте '.on()'. Кроме того, '.html()' лучше, чем '.text()'. – evolutionxbox

Смежные вопросы