Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 13.06.2016, 03:26
Аватар для Georka
Аспирант
Отправить личное сообщение для Georka Посмотреть профиль Найти все сообщения от Georka
 
Регистрация: 05.09.2013
Сообщений: 95

Нужен скрипт раскрывающегося текста
Ребят нужно чтобы 30% текста изначально было видно. И при нажатии на "читать полностью" открывалось остальное содержимое..

В общем мне нужна точная копия того что Вконтакте..

Только прошу как можно проще чтобы всё было. без лишних свойств и функций.
Ответить с цитированием
  #2 (permalink)  
Старый 13.06.2016, 20:13
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,109

открывашка 231.
Ответить с цитированием
  #3 (permalink)  
Старый 13.06.2016, 20:53
Аватар для pureJS
Аспирант
Отправить личное сообщение для pureJS Посмотреть профиль Найти все сообщения от pureJS
 
Регистрация: 04.06.2016
Сообщений: 70

Georka, вот держи - то, что ты хочешь:
<!doctype html>
<html><head><meta charset="utf-8">
<style type="text/css">
.новость{width:350px}
.развернуть-новость{color:blue;cursor:pointer}
.продолжение{display:none}
</style>
<script type="text/javascript">
function развернуть_новость(obj)
{
	//getElementsByClassName() - Internet Explorer 9.0+
	var продолжение = obj.parentNode.getElementsByClassName('продолжение')[0];
	продолжение.style.display = 'block';
	obj.style.display = 'none'
}
</script>
</head><body>
<div class="новость">Ребят нужно чтобы 30% текста изначально было видно.
<div class="развернуть-новость" onclick="развернуть_новость(this)">Читать полностью..</div>
<div class="продолжение">И при нажатии на "читать полностью" открывалось остальное содержимое. В общем мне нужна точная копия того что Вконтакте. Только прошу как можно проще чтобы всё было. без лишних свойств и функций.</div>
</div>
</body></html>
Ответить с цитированием
  #4 (permalink)  
Старый 15.06.2016, 22:12
Профессор
Отправить личное сообщение для Царь Леонид Посмотреть профиль Найти все сообщения от Царь Леонид
 
Регистрация: 22.08.2013
Сообщений: 217

держи свой скрипт, чувак. На 30 процентов я не обратил внимания, но думаю и так норм
<!DOCTYPE html>
<html>
<head>
<script src="https://cdnjs.cloudflare.com/ajax/libs/react/0.14.0/react.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/react/0.14.0/react-dom.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/babel-core/5.6.15/browser.js"></script>
  <meta charset="utf-8">
  <meta name="viewport" content="width=device-width">
  <title>expander</title>
</head>
<body>
  <script type="text/babel">
var data = [{
    id: 1,
    text: "Задача организации, в особенности же укрепление и развитие структуры позволяет оценить значение дальнейших направлений развития. Повседневная практика показывает, что постоянный количественный рост и сфера нашей активности в значительной степени обуславливает создание соответствующий условий активизации."
}, {
        id: 2,
        text: "Идейные соображения высшего порядка, а также консультация с широким активом представляет собой интересный эксперимент проверки форм развития. Идейные соображения высшего порядка, а также новая модель организационной деятельности обеспечивает широкому кругу (специалистов) участие в формировании системы обучения кадров, соответствует насущным потребностям. Идейные соображения высшего порядка, а также реализация намеченных плановых заданий играет важную роль в формировании позиций, занимаемых участниками в отношении поставленных задач. Повседневная практика показывает, что новая модель организационной деятельности представляет собой интересный эксперимент проверки системы обучения кадров, соответствует насущным потребностям. Не следует, однако забывать, что начало повседневной работы по формированию позиции требуют определения и уточнения систем массового участия."
    }, {
        id: 3,
        text: "С другой стороны начало повседневной работы по формированию позиции способствует подготовки и реализации направлений прогрессивного развития. Значимость этих проблем настолько очевидна, что реализация намеченных плановых заданий позволяет оценить значение существенных финансовых и административных условий."
    }];

var ExpanderContainer = React.createClass({
    getInitialState: function () {
        return { displayedList: data }
    },
    render: function () {
        return (
            <div>
                {
                    this.state.displayedList.map(function (el) {
                        return <ExpanderList id={el.id} text={el.text} key={el.id}/>
                    })
                }
            </div>
        );
    }
})

var ExpanderList = React.createClass({
    getInitialState: function () {
        return { expanded: false }
    },
    handleOnClick: function () {
        this.setState({
            expanded: this.state.expanded ?  false : true
        })
    },
    render: function () {
        var expanded = this.state.expanded;
        
        var slicedText = this.props.text.slice(0, 30);
        var expandedText = this.props.text.slice(30);
        
        var styleHidden = {
            display: expanded ? 'inline' : 'none' 
        }
        var styleShowed = {
            display: expanded ? 'none' : 'inline'
        }
        return (
            <div onClick={this.handleOnClick}>
                <span>{slicedText}</span>
                <span className="expand-blue" style={styleShowed}>...Читать далее</span>
                <span className="animated" style={styleHidden}>{expandedText}</span>
                <span className="expand-blue" style={styleHidden}>Скрыть</span>
            </div>
        )
    }
});

ReactDOM.render(
    <ExpanderContainer/>,
    document.getElementById("content")
)
  </script>
<div id="content"></div>
<style>
    @keyframes animatedBackground{
        0%   { background: yellow; }
        100% { background: #FFF; } 
    }
   .expand-blue{
       color:blue;
       cursor:pointer;
   } 
   .animated{
       animation: animatedBackground 2s;
   }
</style>    
</body>
</html>

Последний раз редактировалось Царь Леонид, 15.06.2016 в 22:14.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Нужен 1 скрипт создания таблицы с фильтром artsmart Работа 2 26.05.2014 13:12
Нужен скрипт. Three.js\Pre3d segods Работа 1 28.02.2013 12:28
Помогите настроить скрипт раскрывающегося меню melomanfm Работа 6 10.08.2009 01:21
Нужен скрипт N98CG4 Общие вопросы Javascript 4 12.07.2009 15:54