Javascript-форум (https://javascript.ru/forum/)
-   jQuery (https://javascript.ru/forum/jquery/)
-   -   Как сделать смену языков iPhone-чекбоксом? (https://javascript.ru/forum/jquery/23942-kak-sdelat-smenu-yazykov-iphone-chekboksom.html)

deeand 12.12.2011 18:54

Как сделать смену языков iPhone-чекбоксом?
 
Всем привет!
Имеется сайт, поддерживающий русский и английский языки.
Вопрос: Возможно ли сделать переключение языков при помощи iPhone-чекбокса?

В jQuery не силен.
Функция:
(function($){
	$.fn.tzCheckbox = function(options){
		
		// Default On / Off labels:
		
		options = $.extend({
			labels : ['ON','OFF']
		},options);
		
		return this.each(function(){
			var originalCheckBox = $(this),
				labels = [];

			// Checking for the data-on / data-off HTML5 data attributes:
			if(originalCheckBox.data('on')){
				labels[0] = originalCheckBox.data('on');
				labels[1] = originalCheckBox.data('off');
			}
			else labels = options.labels;

			// Creating the new checkbox markup:
			var checkBox = $('<span>',{
				className	: 'tzCheckBox '+(this.checked?'checked':''),
				html:	'<span class="tzCBContent">'+labels[this.checked?0:1]+
						'</span><span class="tzCBPart"></span>'
			});

			// Inserting the new checkbox, and hiding the original:
			checkBox.insertAfter(originalCheckBox.hide());

			checkBox.click(function(){
				checkBox.toggleClass('checked');
				
				var isChecked = checkBox.hasClass('checked');
				
				// Synchronizing the original checkbox:
				originalCheckBox.attr('checked',isChecked);
				checkBox.find('.tzCBContent').html(labels[isChecked?0:1]);
			});
			
			// Listening for changes on the original and affecting the new one:
			originalCheckBox.bind('change',function(){
				checkBox.click();
			});
		});
	};
})(jQuery);

Скрипт:
$(document).ready(function(){
	
	$('input[type=checkbox]').tzCheckbox({labels:['Enable','Disable']});
});

На html-странице:
...<body>
        <div id="menu">
        <form method="get" action="./">
            <input type="checkbox" checked="checked" id="ch_menu" name="ch_menu" data-on="RUS" data-off="ENG" />
            
  </form>
			<a href="index.php?lang=english">English</a>
			<a href="index.php?lang=russian">Russian</a>
		</div>...


Может кто знает как это сделать? Спасибо!


Часовой пояс GMT +3, время: 01:29.