Преобразование из string v int
<div id=aaa>Bla bla bla</div>
<script> var h = document.getElementById('aaa').offsetHeight;</script>"; $h = "<script>document.write(h);</script>"; <? if ($h<200) { echo "<ul><b>... ПОЧИТАТЬ ПОЛНОСТЬЮ</b></ul>";} ?> переменную $h не читает как число. |
1. Атрибуты тегов принято указывать в двойных кавычках.
То есть надо как минимум <div id="aaa">Bla bla bla</div> 2. Указанный вами код, вероятно, отработает совсем не так, как ожидается. Вы уверены что скопировали его правильно? (и причем тут короткие php теги?) 3. Для получения числа из строки существуют функции parseInt, parseFloat. Но в вашем случае извлечение offsetHeight и так дает число, так что вы либо не описали все условия, либо пытаетесь решать какую-то другую проблему. |
Объясню.
Есть блок <div style=" max-heigh:200px; overflow: hidden; "></div> с не определённой высотой height. мне надо что бы если height>200 то выходила ссылка *почитать дальше* и уже выходил весь текст при нажатие на эту ссылку |
var h = +document.getElementById('aaa').offsetHeight; |
Samsam,
для медитации если высота блока не превышает например 100px) ссылка свернуть/развернуть не появлялась? |
Если можно поподробней
|
Samsam,
вначале отработает php затем ОТРАБОТАЕТ js перепиши код с озвученными правками if ($h<200) //здесь $h = "<script>document.write(h);</script>" строке |
.ta{
height:300px; } <script> jQuery(function($) { var min = 300; $(".ta").each(function(indx, el) { var b = $(el), max = el.scrollHeight, a = b.next(".read-next"); if (max <= 300) a.hide(); else a.on("click", function(event) { var h = b.height(); b.height(h < max ? max : min); $(this).text(h < max ? "" : ""); return false }) }) }); </script> спосибо за подсказку.. а вот как вместо height сдлелать max-height вместо .ta{ height:300px; } .ta{ max-height:300px; } .. что нужно изменить в js |
Samsam,
непонятно о чём вы? потому что нужен отформатированный макет, а не текст Пожалуйста, отформатируйте свой код! Для этого его можно заключить в специальные теги: js/css/html и т.п., например: [js] ... ваш код... [/js] О том, как вставить в сообщение исполняемый javascript и html-код, а также о дополнительных возможностях форматирования - читайте http://javascript.ru/formatting. возможно вы хотели это .css({'max-height' : (h < max ? max : min)+'px'}) |
<style type="text/css"> .ta{ height:100px; } </style> <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"> </script> jQuery(function($) { var min = 100; $(".ta").each(function(indx, el) { var b = $(el), max = el.scrollHeight, a = b.next(".read-next"); if (max <= 100) a.hide(); else a.on("click", function(event) { var h = b.height(); b.height(h < max ? max : min); $(this).text(h < max ? "Svernut" : "OPen all"); return false }) }) }); <div style="height:100%"> <div class="ta" style="overflow:hidden"> text<br>text<br>text<br>texttexttexttext<br>text<br>text<br>texttexttext<br>text<br>text<br>texttext<br>text<br>text<br> </div><a class="read-next" href="#">Open</a> </div> |
Часовой пояс GMT +3, время: 22:53. |