[英]Javascript show/hide - I don't want it to hide the entire element
這可能是一個相當簡單的問題,但是我是JavaScript和jquery的新手。
我有一個帶有基本顯示/隱藏切換的網站。 我正在使用的show / hide功能在這里: http : //andylangton.co.uk/articles/javascript/jquery-show-hide-multiple-elements/
所以這是我的問題.....我真的希望切換部分的前5-10個字始終可見。 有什么辦法可以更改它,以便它不隱藏整個元素,而是隱藏除元素的前幾個單詞以外的所有單詞?
這是我想要執行的操作的屏幕截圖: http : //answers.alchemycs.com/mobile/images/capture.jpg
有許多不同的實現可能性:
這是選項1的工作示例: http : //jsfiddle.net/jfriend00/CTzsP/ 。
您需要:
最后一個更具可定制性。 使用兩個單獨的元素可以進行瑣碎的游戲(例如,顯示圖像,例如,一個小的卷曲箭頭),而無需修改添加/刪除DOM元素。
我傾向於最后一種方法,因為它簡單明了,但這是個人喜好,實際上並不像過去那樣正確。
您可以進行一些插件創作 ,根據您的屏幕截圖,我在此處做了一個示例演示
<div class="toggle">ShowHide</div>
<div class="content">some content some content some content some content some content <br/> some content some content some content </div>
<div class="toggle">ShowHide</div>
<div class="content">some content some content some content some content some content <br/> some content some content some content </div>
這是javascript / jquery代碼
jQuery.fn.myToggle = function(selector, count) {
var methods = {
toggle: function(selector, count) {
if ($(selector).is(':visible')) {
var span = $('<span>');
span.text($(selector).text().substr(0, count) + "...");
span.insertAfter($(selector));
$(selector).hide();
}
else {
$(selector).show();
$(selector).next('span').hide();
}
}
};
$(this).each(function() {
methods.toggle($(this).next(selector), count);
$(this).click(function(evt) {
methods.toggle($(this).next(selector), count);
});
});
};
$(function() {
$('.toggle').myToggle('.content', 3);
});
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.