Some content text.
Вот пример, который делает то, что вы хотите. Я упростил ваш код, поэтому вам не нужно вручную идентифицировать каждую запись и предварительный просмотр.
Это немного сложно. Дайте мне знать, если у вас есть вопросы.
В основном, когда размер окна изменяется, скрипт проходит и находит первый просмотр в каждой строке, находя предварительный просмотр с тем же самым левым смещением, что и самый первый. Затем он добавляет класс last
в запись до (предыдущая строка) и класс first
для этого предварительного просмотра. Я делаю css clear: left
на обоих из них, чтобы все обертывалось нормально, когда записи открываются.
Я сделал ваш код общим, без идентификаторов:
Some preview text …
Some content text.
Это не делает вас придется писать один и тот же код снова и снова.
Скрипт open / close:
$('.trigger').click(function() {
$('.openEntry').slideUp(800); // Close the open entry
var preview = $(this).closest('.preview'); // Grab the parent of the link
// Now, clone the entry and stick it after the "last" item on this row:
preview.next('.entry').clone().addClass('openEntry').insertAfter(preview.nextAll('.last:first')).slideDown(800);
});
// Use "on()" here, because the "openEntry" is dynamically added
// (and it's good practice anyway)
$('body').on('click', '.close', function() {
// Close and remove the cloned entry
$('.openEntry').slideUp(800).remove();
});
Это может быть упрощено немного, я уверен, особенно если вы были готовы переформатируйте html немного больше, вставив запись внутри элемента предварительного просмотра (но все же скрытый). Вот немного более простая версия, с измененным html:
(Я также окрашиваю первый и последний элемент на линии, чтобы вы могли видеть, что происходит)
бит 2mantissa + 1 + 1
+1 в экспоненте (бит мантиссы + 1) состоит в том, что если мантисса содержит abcdef...
, то число, которое оно представляет, фактически 1.abcdef... × 2^e
, обеспечивая дополнительный неявный бит точности.
Для float
это 16 777 217 (224 + 1). Для double
это 9 007 199 254 740 993 (253 + 1).
>>> 9007199254740993.0
9007199254740992
Наибольшее значение, представляемое n-битным целым числом, равно 2n-1. Как отмечено выше, float
имеет 24 бита точности в значении, которое, как представляется, означает, что 224 не подходит. Однако . Силы 2 в пределах показателя экспоненты точно представлены как 1,0 & times; 2n, поэтому 224 может соответствовать, и, следовательно, первое непредставимое целое число для float
равно 224 + 1. Как указано выше. Опять же.
float
и установил его равным 16 777 217. Но когда я напечатал его с помощьюcout
, это привело к 16 777 216. Я используюC++
. Почему я не могу получить 16 777 217? – sodiumnitrate 14 October 2014 в 19:56(1 << std::numeric_limits<float>::digits) + 1
, а в C,(1 << FLT_MANT_DIG) + 1
. Первое хорошо, потому что оно может быть частью шаблона. Не добавляйте +1, если вы просто хотите наибольшее представимое целое число. – Henry Schreiner 21 September 2017 в 19:00