<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<title>TEST</title>
<script src="http://code.jquery.com/jquery-1.5.2.min.js"></script>
<style>
#foo {
width: 300px;
padding: 10px;
height: 100px;
border: 1px solid black;
overflow: auto;
position: relative;
}
p
{
border: 1px solid red;
margin: 10px;
}
</style>
</head>
<body>
<input type="button" value="id1" />
<input type="button" value="id2" />
<input type="button" value="id3" />
<div id="foo">
<p id="id1">Toto je první odstavec. Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.</p>
<p id="id2">Toto je druhý odstavec. Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.</p>
<p id="id3">Treti. Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.</p>
<!-- několik dalších odstavců -->
</div>
<script>
var $foo = jQuery('#foo');
$('input').click(function() {
var lastParagraphPosition = jQuery('#' + $(this).attr("value") ).position();
var scrollPosition = $foo.scrollTop() + lastParagraphPosition.top;
jQuery('#foo').scrollTop(scrollPosition);
});
</script>
</body>
</html>
jQuery.fn.scrollTo = function(elem) {
$(this).scrollTop($(this).scrollTop() - $(this).offset().top + $(elem).offset().top);
return this;
};
function makeSafe(thisText, allowSpace){
var w = "!@#$%^&*()+=[]\\\';,./{}|\":<>?";
var s = 'abcdefghijklmnopqrstuvwxyz0123456789-';
var x = new Array('àáâãäå', 'çč', 'èéêëě','š','ř','ž','á', 'ìíîï', 'ñ', 'ðóòôõöø', 'ùúûüů', 'ýÿ',' ','.');
var r = new Array('a', 'c', 'e','s','r','z','a', 'i', 'n', 'o', 'u', 'y','-','-');
if(allowSpace){
s = s + ' ';
}
thisText = thisText.toLowerCase();
var newText = new Array();
for (i = 0; i < thisText.length; i++){
thisChar = thisText.charAt(i);
if(w.indexOf(thisChar) == -1){
if(s.match(''+thisChar+'')){
newText[i] = thisChar;
}else{
for (j = 0; j < x.length; j++){
if(x[j].match(thisChar)){
newText[i] = r[j];
}
}
}
}
}
return newText.join('');
}
<?php
function dateRange( $first, $last, $step = '+1 day', $format = 'Y/m/d' ) {
$dates = array();
$current = strtotime( $first );
$last = strtotime( $last );
while( $current <= $last ) {
$dates[] = date( $format, $current );
$current = strtotime( $step, $current );
}
return $dates;
}
?>
(function($) {
$.fn.extend({
check : function() {
return this.filter(":radio, :checkbox").attr("checked", true);
},
uncheck : function() {
return this.filter(":radio, :checkbox").removeAttr("checked");
}
});
}(jQuery));
<input onkeypress="return !isNaN(String.fromCharCode(event.charCode || event.keyCode))">
$.fn.showWhenScrolled=function(){
var self = this;
this.init = function(){
self.each(function(){
var self_top = $(this).offset().top;
var scroll_top = $(window).scrollTop();
var win_height = $(window).height();
var frame = $(this).find('iframe');
if(scroll_top > (self_top - win_height)){
if(!frame.attr('src')){
frame.attr({src:frame.attr('title')});
}
}
});
};
$(window).scroll(function(){
self.init();
}).resize(function(){
self.init();
});
self.init();
};
$('.youtube-container').showWhenScrolled();
<?
$out = '';
$fields = dibi::fetchAll("SHOW COLUMNS FROM web_application");
foreach ($fields as $field)
{
$out .= '"'.$field->Field.'";';
}
$out = rtrim($out, ';');
$out .= PHP_EOL;
foreach ($this->model->csvExport() as $index => $row)
{
foreach ($row as $r)
{
$out .='"'.$r.'";';
}
$out = rtrim($out, ';');
$out .= PHP_EOL;
}
$out = iconv('utf-8', 'windows-1250', $out);
$filename = 'application-export___' . date('YmdHis') . '.csv';
header('Content-Encoding: windows-1250');
header('Content-type: text/csv; charset=windows-1250');
header('Content-Disposition: attachment; filename=' . $filename);
//echo "\xEF\xBB\xBF"; // UTF-8 BOM
echo $out;
exit(0);
$this->view->setTemplateFile('modules/application/csv.php');
<?
function HumanReadableFilesize($size) {
// Adapted from: http://www.php.net/manual/en/function.filesize.php
$mod = 1024;
$units = explode(' ','B KB MB GB TB PB');
for ($i = 0; $size > $mod; $i++) {
$size /= $mod;
}
return round($size, 2) . ' ' . $units[$i];
}
function fsize($file) {
$a = array("B", "KB", "MB", "GB", "TB", "PB");
$pos = 0;
$size = filesize($file);
while ($size >= 1024) {$size /= 1024;$pos++;}
return round($size,2)." ".$a[$pos];
}
?>