Мой тестовый код:
UIButton *button = [UIButton buttonWithType:UIButtonTypeRoundedRect];
button.frame = CGRectMake(20, 20, 200, 72);
UIImage *image = [UIImage imageNamed:@"rob.png"];
[button setImage:image forState:UIControlStateNormal];
button.imageEdgeInsets = UIEdgeInsetsMake(0, 10, 0, 0);
[button setTitle:@"Hello" forState:UIControlStateNormal];
button.titleEdgeInsets = UIEdgeInsetsMake(0, 20, 0, 0);
button.contentHorizontalAlignment = UIControlContentHorizontalAlignmentLeft;
[self.view addSubview:button];
Обратите внимание, что я установил button.contentHorizontalAlignment
, а не button.titleLabel.textAlignment
. Мой результат:
Эта функция работает как минимум в Firefox и Internet Explorer. Он запускает любые обработчики событий, прикрепленные к ссылке, и загружает связанную страницу, если обработчики событий не отменяют действие по умолчанию.
function clickLink(link) {
var cancelled = false;
if (document.createEvent) {
var event = document.createEvent("MouseEvents");
event.initMouseEvent("click", true, true, window,
0, 0, 0, 0, 0,
false, false, false, false,
0, null);
cancelled = !link.dispatchEvent(event);
}
else if (link.fireEvent) {
cancelled = !link.fireEvent("onclick");
}
if (!cancelled) {
window.location = link.href;
}
}
Если вы хотите изменить только текущий адрес страницы, вы можете сделать это, просто сделав это в Javascript:
location.href = "http://www.example.com/test";
Просто так:
<a id="myLink" onclick="alert('link click');">LINK 1</a>
<a id="myLink2" onclick="document.getElementById('myLink').click()">Click link 1</a>
или при загрузке страницы:
<body onload="document.getElementById('myLink').click()">
...
<a id="myLink" onclick="alert('link click');">LINK 1</a>
...
</body>
Вы не можете заставить мышь пользователя делать что-либо. Но у вас есть полный контроль над тем, что происходит при срабатывании события.
Что вы можете сделать, так это нажать на нагрузку на тело. В W3Schools есть пример здесь.
Можете ли вы вместо щелчка перенаправить URL-адрес, на который будет выполнен щелчок, с помощью Javascript?
Может быть, вы могли бы положить что-нибудь в тело onLoad, чтобы ехать куда хотите.
Вы можете просто перенаправить их на другую страницу. На самом деле заставить его буквально щелкнуть ссылку и перейти к нему кажется нелепым, но я не знаю всей истории.